[PyQt] QThread schließen

Python und das Qt-Toolkit, erstellen von GUIs mittels des Qt-Designers.
Antworten
ToTTy
User
Beiträge: 12
Registriert: Mittwoch 14. Oktober 2015, 11:30

Hallo alle miteinander,

Mein heutiges Problem ist folgendes:
Ich habe neben meinem Hauptdialogfenster ein Thread erstellt welcher Daten in einer Endlosschleife einliest.
Wenn ich diesen Thread mit thread.terminate() schließe und dann erneut startet will (mit thread.start()) geht dies nicht. Erst wenn ich das komplette Programm neu starte kann ich den Thread wieder starten.

Ich habe bereits exit() und quit() probiert doch diese bewirken nichts.

Wie kann ich den/einen Thread schließen und erneut starten?

MfG,
ToTTy
Benutzeravatar
pillmuncher
User
Beiträge: 1484
Registriert: Samstag 21. März 2009, 22:59
Wohnort: Pfaffenwinkel

@ToTTy: to terminate heißt beenden, nicht unterbrechen. Einen beendeten Thread startet man nicht neu, sondern man startet einen neuen Thread.
In specifications, Murphy's Law supersedes Ohm's.
ToTTy
User
Beiträge: 12
Registriert: Mittwoch 14. Oktober 2015, 11:30

@pillmuncher
Und wie Unterbreche ich einen Thread welcher eine Endlosschleife ausführt?
Benutzeravatar
pillmuncher
User
Beiträge: 1484
Registriert: Samstag 21. März 2009, 22:59
Wohnort: Pfaffenwinkel

ToTTy hat geschrieben:Und wie Unterbreche ich einen Thread welcher eine Endlosschleife ausführt?
Gar nicht. Du beendest den Thread, indem du eine Schleife mit einer Abbruchbedingung verwendest. Später startest du einen neuen Thread mit einer neuen Schleife die ebenfalls auf die Abbruchbedingung testet.
In specifications, Murphy's Law supersedes Ohm's.
ToTTy
User
Beiträge: 12
Registriert: Mittwoch 14. Oktober 2015, 11:30

Vielen Dank!
Das hat mein Problem gelöst 8)

MfG
ToTTy
Antworten