Einzelnen Beitrag anzeigen

Benutzerbild von Olli73
Olli73

Registriert seit: 25. Apr 2008
Ort: Neunkirchen
789 Beiträge
 
#4

AW: Threads und StringList

  Alt Heute, 09:47
Zweitens rufst du in UpdateStatus die Synchronisation mit TThread.Synchronize(TThread.Current... auf. Damit kannst du dir die Synchronisation auch sparen, denn wenn du mit dem aktuellen Thread synchronisierst, bleibst du im gleichen Threrad. Wenn du nil verwendest, wird der Code im Hauptthread ausgeführt.
Ist es nicht so, dass Synchronize immer zum Ausführen im Hauptthread führt und der Paramer für den Thread einfach nur eine optionale Information ist?

Zitat:
Synchronize bewirkt, dass der von AMethod festgelegte Aufruf im Haupt-Thread ausgeführt wird. Dabei werden Multithread-Konflikte verhindert. Der Parameter AThread wird dem Thread des Aufrufers zugeordnet.

Für statische Methoden können Sie AMethod jedem Thread mithilfe des Parameters AThread zuordnen. Außerdem können Sie nil/NULL als Parameter AThread verwenden, wenn Sie die Informationen für den Thread des Aufrufers im Haupt-Thread nicht brauchen.
Jedenfalls habe ich mir gerade selbst etwas programiert, um in einen anderen Thread (als den Hauptthread) synchronisieren zu können.
  Mit Zitat antworten Zitat