我有Spring 3.0應用程序,它連接到WebService。 web服務請求被限制爲每秒1次,並且我需要在每個請求之間以1秒的時間間隔啓動約1000次請求。 我正在嘗試使用Spring TaskExecutor並且我找到了示例here彈簧多任務延遲執行
但是,如何設置每個taskExecutor.execute調用之間的1秒延遲?
從例子的代碼我使用:
import org.springframework.core.task.TaskExecutor;
public class TaskExecutorExample {
private class MessagePrinterTask implements Runnable {
private String message;
public MessagePrinterTask(String message) {
this.message = message;
}
public void run() {
System.out.println(message);
}
}
private TaskExecutor taskExecutor;
public TaskExecutorExample(TaskExecutor taskExecutor) {
this.taskExecutor = taskExecutor;
}
public void printMessages() {
for(int i = 0; i < 25; i++) {
taskExecutor.execute(new MessagePrinterTask("Message" + i));
}
}
}
@Ralph 但這兩種方法立即(或延遲後)觸發操作,然後在延遲/週期後重復操作。所以在這個簡單的例子中,它會寫入:「Message0」,「Message1 ...」,然後等待1秒鐘。 我想寫:「Message0」,等待1秒,然後寫「Message1」。不重複,每次操作之間有延遲。 – 2012-01-04 14:24:43