私は、スレッドがworkA後に終了し、いくつかの遅延後workB(多分新しいスレッド内)を実行する必要がありますスレッド非同期のThread.sleep()
workA();
Thread.Sleep(1000);
workB();
を忙しくすることなく、2つの操作の間の遅延を載せていきたいと思います。
それは、この擬似コードの一部equevalent
workA();
Thread.BeginSleep(1000, workB); // callback
編集可能ですかしら 私のプログラムは、.NET 2.0
編集2である: System.Timers.Timer.Elapsedイベントは、イベントを発生させます1000ミリ秒後。タイマースレッドが1000ミリ秒間ビジー状態になるかどうかはわかりません。
わかりません。あなたのThread.Sleep()コールは、スレッドをビジーにしないで2つの操作の間に遅延を入れます。私はあなたが望むものを誤解していますか? –
はい、この期間(1000ミリ秒)のスレッドプールにはスレッドが1つ少なくなります。 – albert
'System.Threading.Timer'を' System.Timers.Timer'ではなくSystem.Timers.Timerでなく 'no-timer timer 'にすると、待ち時間がOSカーネルで制御されます –