私は約5分間連続して呼び出すことでテストが必要な10のメソッドがある特定の使用例があります。これらの呼び出しを処理するバックエンドの読み込みを避けるために、私は各メソッド呼び出しの間に1秒の遅延を持つことを計画しています。私はむしろ、すべてのメソッド呼び出しの後のThread.sleep()を使用するよりも遅延を導入するためのより良い方法があるかどうかを知りたいと思ったJavaで一連のメソッドを呼び出す間に遅延を導入する
public static void main(String[] args)
{
for (int i = 1; i <= 10; i++) // start i at 1 for initial delay
{
Timer timer = new Timer();
timer.schedule(new TimerTask() {
public void run()
{
callMethodA();
Thread.sleep(1000);
callMethodB();
Thread.sleep(1000);
callMethodC();
Thread.sleep(1000);
callMethodD();
Thread.sleep(1000);
callMethodE();
Thread.sleep(1000);
callMethodF();
}
}, 30000 * i); // 5 second intervals
}
}
:
私のコードは次のようなもののように見えます。この目的のためにScheduledExecutorServiceを使用できるかどうかはわかりませんでしたか?
:あなたは、単にループ
n
回とは、間にいくつかの睡眠を持つメソッドを呼び出すことができます。 [this](https://www.mkyong.com/tutorials/quartz-scheduler-tutorial/)は、あなたを始めるための良い例です。 –私はThread.sleepアプローチがより好きです。なぜなら、実行する必要のある同時実行性がないからです。しかし、私はメソッドをリストに入れ、リストをループするときに繰り返しの間スリープします。 – Aarjav