2017-01-05 7 views

답변

1

ScheduledThreadPoolExecutor을 사용해보십시오.

ThreadPoolExecutor에 할 수있는 추가로 일정이

당신은 단순히 schedule 방법을 사용하고 그것을 통과 할 지정된 지연 시간 후 를 또는 주기적으로 실행하기위한 명령 : javadoc 내에서

Runnable, 여기서 RunnableHttpClient을 통해 전화를 겁니다. Runnable을 초당 10 회 또는 필요에 따라 실행하도록 예약 할 수 있습니다. ExecutorHttpClient에 전화를 걸고 초당 최대 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