【发布时间】:2015-12-18 09:10:31
【问题描述】:
我正在使用 java swingworker 作为后台进程运行作业
protected static class BackgroundTask extends SwingWorker<Void, Void> {
@Override
protected Void doInBackground() {
//while (!isCancelled()) {
Build_JobParams.runJob();
//}
return null;
}
现在,我需要使用不同的参数多次(异步)调用后台进程。由于它是后台进程,因此第二次调用将覆盖第一次调用参数。我尝试的一种方法是使用多个线程,例如 Thread t1 = new Thread(){ ... 但它会间歇性地抛出异常。
任何更好的建议。请注意,我不能在 done() { .. 方法中等待调用第二次调用,因为我进行了很多调用并且不确定最初的调用次数。有什么好的方法请指教。
【问题讨论】:
-
ExecutorService 更适合这种情况
标签: java multithreading swingworker