【发布时间】:2013-01-07 01:56:31
【问题描述】:
在 Eclipse RCP 3.7 中是否可以使用 InterruptedException 取消长时间运行的作业?
【问题讨论】:
标签: eclipse rcp jobs interrupted-exception
在 Eclipse RCP 3.7 中是否可以使用 InterruptedException 取消长时间运行的作业?
【问题讨论】:
标签: eclipse rcp jobs interrupted-exception
处理 Job 取消的首选方法是让 Job 的实现使用传递给 Job 的进度监视器定期检查 IProgressMonitor.isCanceled()。如果 isCanceled() 返回 true,您应该使用 return Status.CANCEL_STATUS 从 Job 返回。
话虽如此,您可以抛出异常,但 Eclipse 的错误处理程序随后会显示错误消息。通常,这不是您想要的。
此外,您最不想做的事情是终止作业线程,因为它在您的 RCP 应用程序中运行的作业之间共享。
【讨论】: