System.MonitorEnter
Delphi
function MonitorEnter(const AObject: TObject; Timeout: Cardinal = INFINITE): Boolean;
C++
extern DELPHI_PACKAGE bool __fastcall MonitorEnter(TObject* const AObject, unsigned Timeout = (unsigned)(0xffffffff));
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
function | public | System.pas System.hpp |
System | System |
Beschreibung
Verhindert den Zugriff aller anderen Threads außer dem aufrufenden auf das angegebene Objekt.
Mit der Funktion MonitorEnter verhindern Sie, dass andere Threads als der aufrufende Thread auf AObject zugreifen.
Vor dem Versuch, das angegebene Objekt zu sperren, testet MonitorEnter, ob der Thread, der das Objekt aktuell sperrt – sofern ein Thread existiert –, genauso oft MonitorEnter wie MonitorExit aufgerufen hat. Falls nicht, wird der aufrufende Thread so lange daran gehindert, auf das Objekt zuzugreifen, bis der vorherige Thread es freigegeben hat
MonitorEnter versucht, das angegebene Objekt für die im Parameter Timeout angegebene Zeitspanne zu sperren. Wenn der Sperrversuch erfolgreich ist, gibt MonitorEnter True zurück, ansonsten False.