Laden...

VS2005 und threadübergreifende vorgänge

Erstellt von mutzel vor 17 Jahren Letzter Beitrag vor 17 Jahren 2.404 Views
M
mutzel Themenstarter:in
40 Beiträge seit 2006
vor 17 Jahren
VS2005 und threadübergreifende vorgänge

hallo..

ich bin gerade darüber gestolpert das mich das VS2005 warnt wenn man threadübergreifende aktionen ausführt die so nicht zulässig sind .. hab dann die folgende meldung in der exception bekommen:

"Ungültiger threadübergreifender Vorgang: Der Zugriff auf das Steuerelement label1 erfolgte von einem anderen Thread als dem Thread, für den es erstellt wurde."

da ich aus der vergangenheit (mit BCB 6) mitbekommen hab das das mit der threadsicherheit nur schwer nachzuvollziehen ist würde ich gern wissen ob das VS2005 jede nicht threadsichere aktion bemerkt oder ob das nur bei zugriffen auf die GUI funktioniert?

lg mutzel

49.485 Beiträge seit 2005
vor 17 Jahren

Hallo mutzel,

nur bei Zugriffen auf das GUI.

herbivore

M
mutzel Themenstarter:in
40 Beiträge seit 2006
vor 17 Jahren

hm ... schade..

gibt es einfache möglichkeiten derartige dinge auch bei ganz normalen threads mitzubekommen? oder muss man sich da ganz genau überlegen was man tut?

lg mutzel

49.485 Beiträge seit 2005
vor 17 Jahren

Hallo mutzel,

gibt es einfache möglichkeiten derartige dinge auch bei ganz normalen threads mitzubekommen?

gibt es nicht

oder muss man sich da ganz genau überlegen was man tut?

das muss man tun

herbivore

347 Beiträge seit 2006
vor 17 Jahren

Original von mutzel
da ich aus der vergangenheit (mit BCB 6) mitbekommen hab das das mit der threadsicherheit nur schwer nachzuvollziehen ist würde ich gern wissen ob das VS2005 jede nicht threadsichere aktion bemerkt oder ob das nur bei zugriffen auf die GUI funktioniert? Weder SWF noch die VCL sind thread safe. Du musstest also auch schon bei der VCL deinen Code durch Synchronize absetzen. 😉
In SWF wird das durch die Invoke Methode gelöst, die jedes Control besitzt.