gpt4 book ai didi

java - 如何运行多个java运行时作业并等待所有作业完成?

转载 作者:行者123 更新时间:2023-12-01 06:19:37 24 4
gpt4 key购买 nike

我有这段代码可以在java中运行带有进度条的作业:

private void createNewJobRun(final int i) {
Job job = new Job("Experiment " //$NON-NLS-1$
+ getName()) {
@Override
protected IStatus run(IProgressMonitor monitor) {

monitor.beginTask("Experiment is running ...", 100); //$NON-NLS-1$
//call here my own functions that to the actual work

monitor.done();
return Status.OK_STATUS;
}
};
job.schedule();



}

问题是我想多次调用这个函数,但只有第一个作业运行,其他作业几乎同时启动,但我从未看到它们的结果......尽管显示了它们的进度监视器。我如何等待所有这些都以某种方式完成,或者问题是其他的?

最佳答案

首先,您必须创建自己的类,它是 Callable 的子类。

在此类中,您将重写 call 方法并执行在 createNewJobRun 中执行的操作。

现在您必须创建一个 FutureTask(在线程中执行以完成您的作业并获得结果)。

示例:查看此链接(位于标题 FutureTask <V> )

HERE

关于java - 如何运行多个java运行时作业并等待所有作业完成?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13011739/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com