System.TMonitor.Enter
Delphi
class procedure Enter(const AObject: TObject); overload; static; inline;
class function Enter(const AObject: TObject; Timeout: Cardinal): Boolean; overload; static;
C++
static void __fastcall Enter(TObject* const AObject)/* overload */;
static bool __fastcall Enter(TObject* const AObject, unsigned Timeout)/* overload */;
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
procedure function |
public | System.pas System.hpp |
System | TMonitor |
説明
呼び出し側スレッド以外のすべてのスレッドから指定のオブジェクトにアクセスできないようにします。
Enter メソッドを使用すると、呼び出し側スレッド以外のスレッドから AObject にアクセスできなくなります。
指定されたオブジェクトのロックを試みる前に、Enter は、そのオブジェクトを現在ロックしているスレッドが存在する場合、そのスレッドが Enter と Exit を同じ回数呼び出したかどうかを検査します。そうでない場合、前のスレッドが解放するまで呼び出し側スレッドはそのオブジェクトにアクセスできなくなります。
Enter メソッドは、指定されたオブジェクトを Timeout パラメータで指定された時間だけロックしようと試みます。首尾よくロックできた場合、Enter は True を返し、そうでない場合は False を返します。