6

目的: 5 つのスレッドを並行して実行し、5 秒ごとに 5 つの json URL を監視します。

複数の並列スレッドを実行して、それぞれ 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

これは、スケジュールされたタスクを含む優れたソリューションを実現する簡単な方法です: http://quartz-scheduler.org/

于 2012-12-27T14:26:57.183 に答える