API:System.SyncObjs.TLightweightMREW
Delphi
TLightweightMREW = record
{$IFDEF MACOS}
private
class var CalendarClock: clock_serv_t;
{$ENDIF MACOS}
private
{$IFDEF MSWINDOWS}
FNativeRW: SRWLOCK;
{$ENDIF MSWINDOWS}
{$IFDEF POSIX}
FNativeRW: pthread_rwlock_t;
procedure GetPosixEndTime(var EndTime: timespec; TimeOut: Cardinal); inline;
{$ENDIF POSIX}
public
{$IFDEF MACOS}
class constructor Create;
class destructor Destroy;
{$ENDIF MACOS}
[HPPGEN('TLightweightMREW() { _op_Initialize(*this); }' + #13#10#13#10#9 +
'static void __fastcall _op_Initialize(/* out */ TLightweightMREW &Dest)')]
class operator Initialize(out Dest: TLightweightMREW);
procedure BeginRead;
function TryBeginRead: Boolean; {$IF defined(LINUX) or defined(ANDROID)}overload;{$ENDIF}
{$IF defined(LINUX) or defined(ANDROID)}
function TryBeginRead(Timeout: Cardinal): Boolean; overload;
{$ENDIF LINUX or ANDROID}
procedure EndRead;
procedure BeginWrite;
function TryBeginWrite: Boolean; {$IF defined(LINUX) or defined(ANDROID)}overload;{$ENDIF}
{$IF defined(LINUX) or defined(ANDROID)}
function TryBeginWrite(Timeout: Cardinal): Boolean; overload;
{$ENDIF LINUX or ANDROID}
procedure EndWrite;
end;
C++
struct DECLSPEC_DRECORD TLightweightMREW
{
private:
_RTL_SRWLOCK FNativeRW;
public:
TLightweightMREW() { _op_Initialize(*this); }
static void __fastcall _op_Initialize(/* out */ TLightweightMREW &Dest);
void __fastcall BeginRead();
bool __fastcall TryBeginRead();
void __fastcall EndRead();
void __fastcall BeginWrite();
bool __fastcall TryBeginWrite();
void __fastcall EndWrite();
};
Eigenschaften
| Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
|---|---|---|---|---|
record struct |
public | System.SyncObjs.pas System.SyncObjs.hpp |
System.SyncObjs | System.SyncObjs |
Beschreibung
Embarcadero Technologies verfügt zurzeit über keine zusätzlichen Informationen. Bitte unterstützen Sie uns bei der Dokumentation dieses Themas, indem Sie Ihre Kommentare auf der Diskussionsseite eingeben.