Mhhh ok das heißt also
Delphi-Quellcode:
-thread-instanzen 1+2+3 (alle selber Code, nur unterschiedliche Listen sind abzuarbeiten)
begin
schleife anfang
_globals.aMultiReadExclusiveWriteSynchronizer.BeginWrite;
setze globale Klasseninstanz := Liste.Items[i]
_globals.aMultiReadExclusiveWriteSynchronizer.EndWrite;
(a)
...
lese hier
...
lese dort
...
lese nochmals hier
(b)
schleife ende
end;
So habe ich das aktuell. Jeder Thread kann der globale Klasseninstanz ein Item zuweisen. An anderen Stellen (nicht in diesem Thread) lese ich die Klasseninstanz dann aus und zeige die dahinterliegenden Daten auf der Benutzeorberfläche an.
Ist das so richtig oder müsste ich jetzt noch zusätzlich von (a) bis (b) ein _globals.aMultiReadExclusiveWriteSynchronizer.Begi nRead; und EndRead setzen?