Eclipse 作业在返回 OK 状态后停留在 Progress View 中
Eclipse Jobs stay in the Progress View after returning an OK status
我有一个 Eclipse 作业 class 类似于以下内容:
public class MyCustomJob extends Job {
@Override
protected IStatus run(IProgressMonitor monitor) {
MyObject.blockingMethod();
return Status.OK_STATUS;
}
}
当我执行此作业并正确退出时,右下角列出进度的地方 运行 仍然显示现已完成的作业的名称,但没有任何进度条。
如果我双击作业名称所在的区域,进度视图会按预期打开,但显示作业已完成。如果我单击 "x" 清除作业,它会从视图中消失,但如果我关闭视图并重新打开它,它会立即返回。
如何从显示的右下角删除作业名称并保证如果我从进度视图中清除了实际被取消的已完成作业?
检查 return 路径以查找任何可能影响状态的异步 UI 执行程序。改变
来自:
Platform.getDefault().asyncExec(runnable)
至
Platform.getDefault().syncExec(runnable)
解决了这个问题
我有一个 Eclipse 作业 class 类似于以下内容:
public class MyCustomJob extends Job {
@Override
protected IStatus run(IProgressMonitor monitor) {
MyObject.blockingMethod();
return Status.OK_STATUS;
}
}
当我执行此作业并正确退出时,右下角列出进度的地方 运行 仍然显示现已完成的作业的名称,但没有任何进度条。
如果我双击作业名称所在的区域,进度视图会按预期打开,但显示作业已完成。如果我单击 "x" 清除作业,它会从视图中消失,但如果我关闭视图并重新打开它,它会立即返回。
如何从显示的右下角删除作业名称并保证如果我从进度视图中清除了实际被取消的已完成作业?
检查 return 路径以查找任何可能影响状态的异步 UI 执行程序。改变 来自:
Platform.getDefault().asyncExec(runnable)
至
Platform.getDefault().syncExec(runnable)
解决了这个问题