int event_idx = WaitHandle.WaitAny(ExportEvents.ToArray());
を使用する場合は、イベントがシグナル状態にある場合WaitAny
関数呼び出しの前に、その後WaitAny
機能はします:
- 結果このイベントIDすぐ
- はこれをスキップこのIDは決して発生しません。
?
int event_idx = WaitHandle.WaitAny(ExportEvents.ToArray());
を使用する場合は、イベントがシグナル状態にある場合WaitAny
関数呼び出しの前に、その後WaitAny
機能はします:
?
:
任意のハンドルが通知されたときに、このメソッドは戻ります。
お知らせがあるが、それがが合図になっていないとき、ハンドルはが通知されたときに、それを返すと言います。つまり、ハンドルがすでに通知されている場合、メソッドはただちに戻ります。
もちろん、コール前にハンドルがシグナル状態になっている可能性がありますが、競合状態のためにコール中にシグナルが通知されない可能性があります。
これは、待機ハンドルのタイプと他のスレッドが待機しているかどうかによって異なります。すべてのイベントに手動リセットの特性がある場合は、結果がイミデーションになります。自動リセットイベントがあり、別のスレッドが同じイベントを待っている場合は、どのイベントが通知されるかを知る競争です。 the documentationから