Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#18

AW: Critical Section um globale Methode?

  Alt 7. Jun 2017, 15:34
Im Prinzip ist TMonitor die umgedrehte Implementation für mehrere TCriticalSection.

Du kannst in ein anderes Object eine CriticalSection rein tun und diese verwenden
Delphi-Quellcode:
TMyObject = class
  Lock: TCriticalSecition;
end;

MyObj.Lock.Enter
oder du nutzt das "versteckte" Feld in allen TObject, welches man über TMonitor ansprechen kann.
Delphi-Quellcode:
TMyObject = class
end;

TMonitor.Enter(MyObj); // macht dann intern quasi sowas wie ein MyObj.geheimesproperty.Enter;
// und vorher noch ein IF NOT Assigned(MyObj.geheimesproperty) THEN MyObj.geheimesproperty := TCriticalSectionÄhnlichesDing.Create;
Nur den Namen "Monitor" fand ich schon immer ein bissl "irreführend".
$2B or not $2B

Geändert von himitsu ( 7. Jun 2017 um 15:37 Uhr)
  Mit Zitat antworten Zitat