thread beenden, ganz dumme frage

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.
Buell
User
Beiträge: 90
Registriert: Samstag 29. Oktober 2005, 14:17

thread beenden, ganz dumme frage

Beitragvon Buell » Mittwoch 16. November 2005, 13:48

Mal ne ganz blöde Frage (die einfachsten Dinge sind meist am schwersten zu finden):

also folgendes Beispiel:

Code: Alles auswählen

        start_new_thread(self.ConnectEvent,())

    def ConnectEvent(self):
        self.eventHandler = ContextEvents(self.context)
        while 1:
            pythoncom.PumpWaitingMessages()

class ContextEvents(win32com.client.getevents("SAPI.SpSharedRecoContext")):

    def OnRecognition(self, StreamNumber, StreamPosition, RecognitionType, Result):
        newResult = win32com.client.Dispatch(Result)
        connect.OnRecognition(newResult.PhraseInfo.GetText())

... startet einen Thread und führt einen win32com Eventhandler aus. Problem ist der Thread wird nie geschlossen und führt beim Beenden des Programmes zu einer Fehlermeldung. Ist zwar generell nicht schlimm aber unschön. Also der Thread soll irgendwann geschlossen werden, wie mach ich das? Könnte ohne weiteres ne Methode einbauen die das macht, aber wie...
BlackJack

Beitragvon BlackJack » Donnerstag 17. November 2005, 01:32

Üblicherweise führt man ein "Flag" ein, das in der Schleife getestet wird und das man dann bei Bedarf auf `False` setzt und damit die Schleife beendet.

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder