System.SyncObjs.TLightweightEvent.WaitFor
Delphi
function WaitFor(Timeout: LongWord = INFINITE): TWaitResult; overload; override;
C++
virtual System::Types::TWaitResult __fastcall WaitFor(unsigned Timeout = (unsigned)(0xffffffff))/* overload */;
inline System::Types::TWaitResult __fastcall WaitFor(const System::Timespan::TTimeSpan &Timeout){ return TSynchroObject::WaitFor(Timeout); }
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
function | public | System.SyncObjs.pas System.SyncObjs.hpp |
System.SyncObjs | TLightweightEvent |
説明
イベントがシグナルを受信するまで、またはタイムアウトするまで、現在のスレッドをブロックします。
イベントが非シグナル状態の場合でも、WaitFor は呼び出しているスレッドを即座にはブロックしません。2、3 CPU 周期をスピンループで待機し、それでもなお、イベントが非シグナル状態だった場合に、呼び出しているスレッドをブロックします。
Timeout ミリ秒後、イベントが依然として非シグナル状態だった場合、WaitFor はどちらにせよ返ります。
WaitFor は、待機結果を返し、それは、wrSignaled
と wrTimeout
のいずれかになります。