0
我试图每分钟运行一个作业[其中包含3个服务应该平行运行]。以下是我的代码片段。Java ScheduledExecutorService定期运行
ExecutorService service = Executors.newFixedThreadPool(servicesMap.size());
for (Map.Entry entry : servicesMap.entrySet()) {
service.submit(new MyService(conn, serviceID));
// here serviceID is id1 id2 id3 these three job should execute parallel
}
注:MyTask实现赎回& servicesMap将3总是
如果我尝试使用ScheduledExecutorService的话,我能不能够实现它。 它说scheduleService.schedule不接受赎回型parameterts
ScheduledExecutorService scheduleService = Executors.newScheduledThreadPool(servicesMap.size());
for (Map.Entry entry : servicesMap.entrySet()) {
scheduleService.schedule((new MyService(conn, serviceID)), 0, 60, TimeUnit.SECONDS);
}
请帮忙修改ScheduledExecutorService的代码来实现这一目标。
注意到Chriki。所以这将运行Service1 Service2 Service3独立并行每分钟权利。如何在一分钟内完成Service1 Service2 Service3应该平行运行,然后在下一分钟进行。 – DEADEND
Chriki .. for循环 - 它会循环三次。在循环内部,我写了scheduleService.schedule。这是对的吗? – DEADEND
我们正在触发通知服务批次。这批将每分钟运行一次。 我们需要在每分钟内并行运行3个服务,这三个服务将触发电子邮件和短信给不同的客户。 这件事我正在努力实现它。请让我知道,如果我的解释不明白。 – DEADEND