Thread starten in Python
Dieses Tutorial stellt das Modul threading
vor, um einen Thread in Python zu erstellen und zu starten.
Thread-Definition
Ein Thread ist eine Menge von Operationen, die ausgeführt werden müssen. Ausführen von Threads bedeutet, dass im Programm zwei oder mehr Dinge gleichzeitig ausgeführt werden. Ein Thread kann nur in einem Kern der CPU ausgeführt werden. Beim Threading geht es darum, wie wir mit den Threads in einem CPU-Kern umgehen.
Thread-Implementierung in Python
Python verwendet das Modul threading
, um Threads in Programmen zu implementieren. Sie können eine Thread
-Instanz erstellen und diese dann aufrufen, um einen separaten Thread zu starten.
Wenn Sie eine Thread
-Instanz erstellen, übergeben Sie eine Funktion und eine Liste von Argumenten für diese Funktion. In diesem Fall weisen Sie den Thread
an, die Funktion thread_function()
auszuführen und als Argument 1 zu übergeben.
Die thread_function()
protokolliert einige Meldungen und schläft für zwei Sekunden.
# python 3.x
from threading import Thread
import time
import logging
def thread_function(name):
logging.info("Thread %s: starting", name)
time.sleep(2)
logging.info("Thread %s: finishing", name)
if __name__ == "__main__":
format = "%(asctime)s: %(message)s"
logging.basicConfig(format=format, level=logging.INFO, datefmt="%H:%M:%S")
thread = Thread(target=thread_function, args=(1,))
thread.start()
logging.info("Exiting")
Ausgabe:
10:23:58: Thread 1: starting
10:23:58: Exiting
10:24:00: Thread 1: finishing
Threading-Visualisierung
Der Ablauf des Programms ist unten angegeben. Sobald Sie start()
aufrufen, löst es thread_function()
aus und läuft in einem separaten Thread. Das Hauptprogramm läuft auch parallel als weiterer Thread.