我想知道 Java 的 Scheduled Thread Pool Executor 是否可以实现以下操作。我希望 STPE 以固定延迟安排多个 Runnable,每个 Runnable 用于来自List<MyObject>
. 我编写的以下代码(如下)似乎没有任何问题。但我也希望所有这些 Runnables 在同一时间执行。这可能吗,请问我该怎么做?如果没有,还有其他方法可以完成我需要的吗?另外,我需要线程每 1 秒执行一次。
private List<MyObject> myObjects...
int corePoolSize = 1;
long initialDelay = 1L;//1 second
long delay = 1L;//1 second
ScheduledThreadPoolExecutor stpe = new ScheduledThreadPoolExecutor(corePoolSize);
for (int i = 0; i < myObjects.size(); i++) {
stpe.scheduleWithFixedDelay(new Runnable() {
@Override
public void run() {
//DO SOMETHING
}
}, initialDelay, delay, TimeUnit.SECONDS);
}