Online
Registriert seit: 20. Jan 2006
Ort: Lübbecke
9.960 Beiträge
Delphi 11 Alexandria
|
AW: Lock/Unlock-Mechanismus ohne Bezug auf Multithreading?
25. Jul 2019, 13:44
Das ist jetzt vermutlich zu trivial:
Delphi-Quellcode:
type
TLock = record
private
FLocked: Boolean;
class function Create: TLock; static;
public
function TryLock: Boolean;
procedure Unlock;
property Locked: Boolean read FLocked;
end;
class function TLock.Create: TLock;
begin
Result.FLocked := False;
end;
function TLock.TryLock: Boolean;
begin
Result := not FLocked;
FLocked := True;
end;
procedure TLock.Unlock;
begin
FLocked := False;
end;
|