2017-01-05 24 views

答えて

1

ScheduledThreadPoolExecutorをお試しください。

のjavadocから:

さらにスケジュールが指定された遅延時間後 を実行するために、または定期的に

あなたは単にscheduleメソッドを使用して、それ渡すを実行するためのコマンドができThreadPoolExecutor RunnableRunnableHttpClientでお電話をします。 Runnableは、毎秒10回、または必要に応じて実行するようにスケジュールできます。 Executorは、HttpClient以上の呼び出しをキューに入れ、最大10回/秒しか実行しません。

+0

シナリオ内のHTTP呼び出しを同時に行うことはできません。彼らはすべて、互いに次々とシリーズになる必要があります。 ScheduledThreadPoolExecutorを使用すると、異なるスレッドが並行して実行されます。 – Vipul

+0

[コンストラクタ](https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ThreadPoolExecutor.html#ThreadPoolExecutor(int、%20int、%20long、%20java.util)を設定します。 concurrent.TimeUnit、%20java.util.concurrent.BlockingQueue))引数 'maxPoolSize'を1に設定します。並行スレッドはありません。または、[setMaxPoolSize()](https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ThreadPoolExecutor.html#setMaximumPoolSize(int))を呼び出します。 – mangotang

関連する問題