Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
39.161 Beiträge
 
Delphi 10.4 Sydney
 
#8

AW: Thread sichere Datenabfrage

  Alt 29. Okt 2020, 18:10
Statt CriticalSection gibt es seit 'ner Weile auch TMonitor.
(Achtung, nicht das TMonitor aus TScreens sondern aus System ... ja, ich weiß der Name ist doof/irrsinnig/verwirrend, aber wenn jemand strunzdoof von C# klaut kopiert, dann kommt sowas bei raus)

Die TMonitor können an ALLE TObjekt angehängt werden.
Besonders geil, weil man so keine Extra-Variable braucht und es sogar ohne Umbauten an Fremdkomponenten nutzen kann (z.B. an einer TStringList).

Delphi-Quellcode:
TMonitor.Enter(MyList); // siehe auch TryEnter/Wait/Pulse und der Timeout im Parameter
try

finally
  TMonitor.Exit(MyList);
end;
Statt TMonitor.Enter geht auch MonitorEnter

und könnte man sich auch selbst via ClassHelper als Methoden an TObject/TMyList/... hängen.
Delphi-Quellcode:
MyList.Enter; // oder z.B. Lock und Unlock
try

finally
  MyList.Exit;
end;
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
Delphi-Tage 2005-2014

Geändert von himitsu (29. Okt 2020 um 18:15 Uhr)
  Mit Zitat antworten Zitat