很抱歉,这个问题有点含糊,但我无法从调试中获得任何有用的信息。
我有一个使用 new Thread().Start 调用的线程,然后它将运行一小段时间,我收到以下消息:
未捕获的异常:应用程序“我的应用程序名称(201)”没有响应;进程终止
现在令人沮丧的是我能够运行相同的进程但没有线程,这会锁定我的应用程序,但我可以从我的 Eclipse 控制台看到它的工作没有错误。所以我知道他们不是我在线程上使用的函数的错误。
我认为问题可能在于我使用“InvokeLater”函数来更新我的 GUI 与线程进程,我非常努力地发送垃圾邮件,我担心它会破坏我的线程。
有什么建议么?
为了扩展我的帖子,问题是由于我从我的另一个线程中调用了这个代码:-
invokeLater(new Runnable()
{
public void run()
{
_output.setText(_output.getText() + "\n" + msg);
}
});
这正在建立一个队列,该队列很快使我的应用程序崩溃。
我对该选项的解决方案是通过将此代码添加到我的函数中来使用事件线程:-
synchronized(Application.getEventLock()) {
_output.setText("new text " + System.currentTimeMillis());
}