在Android中,但可以在任何Java程序中,我生成一个抛出RunTimeException
的子线程。代码如下所示:
new Thread(new Runnable() {
@Override
public void run() {
throw new RuntimeException();
}
}).start();
这完全终止了我的应用程序FatalException错误。我以为只有子线程会结束,但主/父线程可以继续吗?这个假设不正确吗?
答案 0 :(得分:0)
Android只有主(单)线程。
答案 1 :(得分:0)
非常确定您可以创建自己的异常并在子线程上执行stopSelf()。不确定你正在尝试做什么,或者我举一个例子。
Runnable r = new Runnable()
{
public void run() {
while (/*whatever you want to determine end of thread*/)
{
try { // this stuff
} catch (Exception e) { // exception handling
}
}
stopSelf();
}
};
//Thread start code
这应该可以工作,而不是让您的应用程序崩溃...
答案 2 :(得分:0)
RuntimeException通常只会杀死该线程,但可以杀死该程序。其他事情通常是决定性因素。需要查看更多代码,但这可能是线程中的机器人异常处理问题。