Zwei Threads, Funktionsaufruf

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
george
User
Beiträge: 109
Registriert: Mittwoch 11. Januar 2006, 20:28
Wohnort: Berlin

Hey,

ich bin gerade dabei ein Programm mit mindestens drei Threads aufzubauen.
Jetzt stehe ich vor der Aufgabe, Daten aus dem einem Thread(Thread 1) in den anderen Thread(Thread 2) zur Weiterverarbeitung zu übertragen.

Jetzt meine Frage, was ist hierfür die einfachste und sicherste Variante?
Ich würde es über einen Funktionspointer machen. Damit meine ich, Thread-1 kriegt bei der Initialisierung einen Funktionspointer(z.B. "SetData(...)") aus dem Thread-2.

Danke und Gruss
george
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

george hat geschrieben:Daten aus dem einem Thread(Thread 1) in den anderen Thread(Thread 2) zur Weiterverarbeitung zu übertragen.
Hallo george!

Du musst diese Datenübergabe über ein "Thread-Sicheres" Objekt machen. Z.B. über eine ``Queue.Queue``. Dein Zielthread kann z.B. an der Queue warten bis etwas übergeben wurde. Dafür kannst du die Queue an den Thread 1 weitergeben oder einfach eine Methode in der Klasse des Thread 2 dafür heranziehen.

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
george
User
Beiträge: 109
Registriert: Mittwoch 11. Januar 2006, 20:28
Wohnort: Berlin

Hallo gerold,

danke für deine Antwort. Werde es so implementieren.


Gruss george
Antworten