加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 如何在用户关闭Eclipse应用程序时完成作业

发布时间:2020-12-15 02:31:06 所属栏目:Java 来源:网络整理
导读:我使用org. eclipse.core.runtime.jobs.Job执行存储过程,删除数据并根据新数据更新用户界面.因此,即使用户关闭eclipse应用程序,这项工作也很重要. final Job execStoredProcJob = new Job(taskName) { protected IStatus run(IProgressMonitor monitor) { mo
我使用org. eclipse.core.runtime.jobs.Job执行存储过程,删除数据并根据新数据更新用户界面.因此,即使用户关闭eclipse应用程序,这项工作也很重要.

final Job execStoredProcJob = new Job(taskName) {
    protected IStatus run(IProgressMonitor monitor) {
        monitor.beginTask(taskName,// execute stored procedure
// update user interface
        monitor.done();
        return Status.OK_STATUS;
    }
};

execStoredProcJob.schedule();

当我关闭eclipse应用程序时,Job仍在运行它似乎杀死了Job.用户关闭eclipse应用程序后如何完成工作?可能吗?

解决方法

我想你可能想看看调度规则
http://www.eclipse.org/articles/Article-Concurrency/jobs-api.html

execStoredProcJob.setRule([Workspace root]);
execStoredProcJob.schedule();

如果您对项目有引用,则可以像project.getWorkspace().getRoot()一样实现[Workspace root].

这将阻止所有需要相同规则的作业.关机工作就是其中之一..

它也有可能:

IWorkspace myWorkspace = org.eclipse.core.resources.ResourcesPlugin.getWorkspace();

然后使用:

myWorkspace.getRoot();

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读