Javadoc的done()
方法SwingWorker:
在doInBackground方法完成后在Event Dispatch Thread上执行.
我已经找到了在取消工人的情况下不是这样的线索.
Done
在每种情况下都会被调用(正常终止或取消),但是当cancelled
它没有排入 EDT时,就像正常终止时那样.
done
在SwingWorker
取消a的情况下调用时是否有一些更精确的分析?
澄清:这个问题不是关于如何做到cancel
的SwingWorker
.这里假设SwingWorker
以正确的方式取消.
而且当它们应该完成时,它不是关于线程仍在工作.
以下代码给出了编译时错误:缺少返回值和缺少return语句,我将返回什么值Void Type
?
final SwingWorker<Void, Void> worker = new SwingWorker<Void, Void>()
{
@Override
protected Void doInBackground() throws Exception
{
// some code
if (something)
{
return;
}
}
}
Run Code Online (Sandbox Code Playgroud)