Thema: Delphi Threadsynchronisation

Einzelnen Beitrag anzeigen

messie

Registriert seit: 2. Mär 2005
Ort: Göttingen
1.592 Beiträge
 
Delphi 2009 Professional
 
#2

Re: Threadsicherheit

  Alt 22. Mär 2009, 18:55
Zitat von blablab:
Aber wie ist das, wenn ich nur in einem Thread (nicht der Hauptthread) auf die ListBox zugreife und sonst nicht. Kann das auch zu Problemen führen?
Ja, auf jeden Fall! Denn alle Steuerelemente "gehören" dem Hauptthread. Und wenn Deine ListBox angeklickt wird, bekommt der Hauptthread die Message, es darf also nicht gleichzeitig von einem anderen Thread zugegriffen werden.
Zitat von blablab:
Und wie ist es mit Lesen? kann ich in einem Thread zb auslesen ob eine ListBox Enabled ist oder sollte ich dafür auch Synchronize benutzen?
Ja, aus demselben Grund: wenn jemand im Moment Deines Lesezugriffs darauf klickt, geht das meist (aber nicht immer) schief. Also immer Synchronize benutzen, dann geht es der Reihe nach.

Grüße, Messie

[Edit]ich hab' mich ein wenig gewundert, warum vor mir niemand geantwortet hat. Der Titel "Threadsicherheit" trifft nicht ganz das Thema. Threadsynchronisation ist der Begriff: wie kann ich vermeiden, dass zwei Threads gleichzeitig auf etwas zugreifen und sich dann den Kopf aneinander stoßen[/Edit]
  Mit Zitat antworten Zitat