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