6

目标:每 5 秒监控 5 个 json URL,其中 5 个线程并行运行。

我想运行多个并行线程以每个 n 秒的间隔监控 JSON URL。我正在使用ScheduledExecutorService这个。

ScheduledExecutorService executor = Executors.newScheduledThreadPool(5);

for(NetworkBwXmlObject x : xmlDsList) {
    executor.scheduleAtFixedRate(new processJsonUrl(x.getJsonUrl(),x.getId(), ctx), 0, 5, TimeUnit.SECONDS);
}

class processJsonUrl implements Runnable {

}

这是创建 5 个线程来监控 5 个 URL 的正确方法吗?我不想在这里使用线程池。在应用程序的生命周期之前,所有 5 个线程都必须处于活动状态。

可以ScheduledExecutorService在我的情况下提供帮助还是有另一种方法可以实现这一目标?

谢谢

4

2 回答 2

6

ScheduledExecutorService 是一个线程池,它会做你想做的事。

于 2012-12-27T14:27:09.400 回答
1

我会用 Quartz 来实现它,这是实现涉及计划任务的良好解决方案的一种简单方法:http: //quartz-scheduler.org/

于 2012-12-27T14:26:57.183 回答