Einzelnen Beitrag anzeigen

Blup

Registriert seit: 7. Aug 2008
Ort: Brandenburg
1.464 Beiträge
 
Delphi 12 Athens
 
#27

AW: Änderungen von Variablen synchronisieren

  Alt 20. Mär 2012, 08:21
Delphi-Quellcode:
Procedure TMyList.Lock;
Begin
IF MustLock then
   FCS.Enter;
End;

procedure TMyList.Unlock;
begin
IF MustLock then
   FCS.Release;
end;


Procedure TMyList.Locklist;
Begin
 FCS.Enter;
 MustLock:=False; //Liste muss später NICHT automatisch gesperrt werden
End;

Procedure TMyList.Unlocklist; //EDIT: Reihenfolge der Codezeilen wurde getauscht
Begin
  MustLock:=True; //Liste muss später automatisch gesperrt werden
  FCS.Release;
End;
Wenn Thread1 Locklist aufgerufen hat und die Liste bearbeitet, kann Thread2 im Lock am FCS.Enter vorbei und die Liste ebenfalls zur gleichen Zeit bearbeiten.
  Mit Zitat antworten Zitat