私が取り組んでいるシステムは、作業項目の IEnumerable を消費し、それらのそれぞれを反復処理し、それらの間で一定期間待機する必要があります。集計現場のシステムはできるだけシンプルにしたい。つまり、指定した特定の時間ブロックする foreach ブロックの最後に呼び出すことができるメソッドが必要ですが、保証することが不可能であるため、 Thread.Sleep を使用したくありません精度。
ブロックする必要がある最小時間は 100 ミリ秒ですが、これより長くブロックしたくありません。これは、Thread.Sleep が時々行うのを見たことがあります (状況に応じて時間がかかるためだと思います)。スイッチなど)。
編集:関連。タイムアウト値を指定した WaitHandle.Wait の呼び出しは、Thread.Sleep と同じことを行いますか?