Python: Laufende Funktion im Thread ändert current_thread () nicht

8

Ich versuche gerade herauszufinden, wie Threads in Python funktionieren.

Ich habe den folgenden Code:

%Vor%

Was mir aufgefallen ist, ist, dass beide Drucke dasselbe ausgeben. Warum ändert sich der Thread nicht?

    
cpp_ninja 17.03.2013, 12:26
quelle

2 Antworten

17

Sie führen die Funktion aus, statt sie zu übergeben. Versuchen Sie es stattdessen:

%Vor%     
robertklep 17.03.2013, 12:33
quelle
5

Sie rufen die Funktion auf, bevor sie dem Konstruktor Thread übergeben wird. Außerdem geben Sie es als falsches Argument an (das erste positionale Argument für den Thread-Konstruktor ist group ). Angenommen, func1 gibt None zurück, was Sie tun, entspricht dem Aufruf von threading.Thread(None) oder threading.Thread() . Dies wird ausführlicher in den Threading-Dokumenten erläutert.

Um Ihren Code arbeiten zu lassen, versuchen Sie Folgendes:

%Vor%     
Michael Mauderer 17.03.2013 12:33
quelle

Tags und Links