Seite 1 von 1
Threads
Verfasst: Mittwoch 16. August 2006, 08:21
von gorba
Hallo
Ich habe ein "Hauptprogramm" in dem ich z.B. die Serielle Schnittstelle öffne. Wie kann ich nun den Handler der Schnittstelle in meinen Timer Thread bekommen? Mit Parameterübergaben klappt das irgendwie nicht. Kann in den Handler in eine Modulglobale Variable ablegen und dann im Thread darauf zugreifen?
Danke schonmal für eure Hilfe. grz
Verfasst: Mittwoch 16. August 2006, 12:31
von Python 47
Einen neuen Thread kannst du wie folgt machen:
Du hast eine Funktion, die als selbständiger Process laufen soll. Die Funktion lautet z.B. schnittstelle dann machst du folgendes:
Code: Alles auswählen
import thread
def thread_schnittstelle():
start_new_thread(schnittstelle, (parameter))
"""start_new_thread übernimmt 2 Argumente. Das 1. Argument ist der
Name der Funktion, die als eigenständiger Prozess laufen soll und
das 2. Argument sind die Parameter der Funktion"""
Ich hoffe das war jetzt einigermaßen gut erklärt. Aber poste am besten mal deinen Code

Verfasst: Mittwoch 16. August 2006, 13:15
von birkenfeld
Entweder "from thread import start_new_thread" und dann "start_new_thread(...)"
oder "import thread" und dann "thread.start_new_thread(...)".
Außerdem sollte man sich das Modul "threading" anschauen.
Verfasst: Mittwoch 16. August 2006, 13:23
von gorba
oke das hat geholfen. Thx
Verfasst: Mittwoch 16. August 2006, 16:09
von Python 47
birkenfeld hat geschrieben:Entweder "from thread import start_new_thread" und dann "start_new_thread(...)"
oder "import thread" und dann "thread.start_new_thread(...)".
Jop hast natürlich vollkommen recht!
War grade erst aufgestanden.
