Critival Sections sind nicht kompliziert. Du brauchst nur eine Variable und vier Funktionen:
Delphi-Quellcode:
var
mySection: RTL_CRITICAL_SECTION;
Einmalig rufst du folgendes auf:
InitializeCriticalSection(mySection);
Den Zugriff auf die Liste machst du in diesem Konstrukt:
Delphi-Quellcode:
EnterCriticalSection(mySection);
try
//....
finally
LeaveCriticalSection(mySection);
end;
Und zum Abschluss folgt dies:
DeleteCriticalSection(mySection);