Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
在 Eclipse RCP 3.7 中是否可以使用 InterruptedException 取消长时间运行的作业?
处理作业取消的首选方法是IProgressMonitor.isCanceled()使用传递给作业的进度监视器定期检查作业的实施。如果isCanceled()返回 true,您应该使用return Status.CANCEL_STATUS.
IProgressMonitor.isCanceled()
isCanceled()
return Status.CANCEL_STATUS
话虽如此,您可以抛出异常,但 Eclipse 的错误处理程序随后会显示错误消息。通常,这不是您想要的。
此外,您要做的最后一件事是终止作业线程,因为它在您的 RCP 应用程序中运行的作业之间共享。