Python -Thread Join

Python -Thread Join
Ein Thread sollte die Funktion „join ()“ verwenden, wenn er auf eine andere Methode warten möchte, für die der zweite Thread warten muss, bis der erste abgeschlossen ist. Mit einem Thread -Objekt rufen wir die Join -Methode anhand der Thread -Objekte auf, die das Python -Thread -Modul importieren, damit sie beim Erstellen von Threads erforderlich ist.

So implementieren Sie Python -Thread Join in einem Skript

In diesem Beispiel verwenden wir Pythons „Thread.join () methode ”, um zwei Threads zu kombinieren. Ein Thread ist ein einzigartiger Verarbeitungsstrom. Dies impliziert, dass es in Ihrem Programm zwei gleichzeitige Ereignisse geben wird. Die Mehrheit der Python -Implementierungen erweckt jedoch nur den Eindruck, dass mehrere Themen gleichzeitig ausgeführt werden. Ein wesentlicher Vorteil der Verwendung von Threads besteht darin, dass eine Multithread-Anwendung mit einem One-Processor-Prozessorsystem betrieben wird und gleichzeitig ein Multiprozessorsystem verwendet. Die Programmierung mit vielen separaten Threads hilft bei der Implementierung paralleler Algorithmen.

Mit der Methode join () der Thread -Klasse können ein Thread verzögert, bis ein anderer Thread ausgeführt wurde. Wenn Faden.Join () wird aufgerufen, es wird sicherstellen, dass es noch vor dem Ausführen des Programms gestoppt wird: Wenn es sich um eine Threadinstanz handelt, deren Thread derzeit ausgeführt wird.

Lassen Sie uns das Skript im Tool „Spyder“ implementieren, indem wir den Code implementieren. Ein tolles Werkzeug zum Kompilieren von Python -Code ist Spyder. Spyder verfügt über eine dynamische Programmausführung, die Ihnen neue Fähigkeiten zur Fehlerbehebung bietet. Es kann auch verwendet werden, um Analysen mithilfe von Informationen zu erstellen und Datenverwaltungsziele zu erreichen. Um den Code zu starten, importiert die erste Zeile das "Threading" -Modul. In der nächsten Zeile wird eine Methode mit der Kennung "Func1" erstellt. Einfache benutzerdefinierte Methoden sind Techniken, mit denen Sie Ihr Skript im Körper eines Programms organisieren können. Hier entwerfen wir einen.

Einmal definiert, kann eine Funktion ähnlich verwendet werden, um zu erstellen, wie konstruierte Aktionen und Parsingprozesse verwendet werden. Variablen werden eher auf Funktionen als auf Wert gesendet. Die Variablen "Dividende" und "Divisor" wurden als Parameter für "Func1" in der Klammern geliefert. Die Anweisung wurde dann mit der Funktion „print ()“ in der nächsten Zeile gedruckt. Die Funktion print () zeigt die Nachricht auf dem Bildschirm oder ein anderes gemeinsames Ausgabegerät an. Das Objekt wird in eine Zeichenfolge umgewandelt, bevor er auf dem Monitor angezeigt wird, und der Phrase kann eine Zeichenfolge oder möglicherweise ein anderes Element sein. Die Anweisung "let start" wird an die Funktion "print ()" übergeben, und eine "If" -Konstufe wird angewendet, um zu bestimmen Ob Druck „Falsch.Das Wort "Ende" wird dann übergeben, wenn wir die Methode "print ()" noch einmal aufrufen. Dann verwenden wir in der folgenden Zeile „Threading.Thread “, um zwei Threads zu erstellen. In seiner Klammung führen wir die Funktion aus und übergeben gleichzeitig die Werte von Dividenden und Divisor, die „15“ und „3“ als Parameter sind.

Eine ähnliche Prozedur wird dann in der nächsten Zeile wiederholt, diesmal die Funktion mit einem Thread auszuführen und ihm die Werte „21“ und „2“ für die Dividende und den Divisor als Argumente zu geben. Der erste Thread wird in der Variablen „Thread 1“ aufbewahrt, während der zweite Thread in der initialisierten Variablen „Thread 2“ aufbewahrt wird. Die nächste Zeile verwendet die Methode "start ()" und "Thread 1", um die Ausführung des Threads zu beginnen. Das Betriebssystem startet den Prozess so schnell wie möglich in einem neuen Thread, nachdem die Methode „start ()“ sofort zurückgegeben wird. Dann werden „Join ()“ und „Thread 1“ aufgerufen. Auf die gleiche Weise wiederholen wir den Vorgang, indem wir die Funktionen „start ()“ und „join ()“ mit "Thread 2" aufrufen.”

Die Technik „Join ()“ wird von einem Thread verwendet, um auf einen anderen Thread zu warten. Folglich ist der allererste Thread beendet worden. Lassen Sie uns zuerst drucken, und danach erschien „wahr“, weil der Zustand des ersten Threads zufrieden war. Die Antwort wird 0 sein, wenn wir 15 durch 3 teilen. So zeigte es "True", bevor die gedruckte Anweisung "Ende" hinzugefügt wurde, was bedeutet, dass der erste Thread zu Ende gegangen ist. Der zweite Faden wurde dann gesehen. Der zweite Thread endete dann nach der Anzeige „Falsch“, da die Kriterien nicht erfüllt waren und die Antworten auf die angegebenen Zahlen nicht Null waren.

Hier ist ein weiteres Threading -Beispiel, bei dem die „Threads.join () ”-Funktion wird ebenso wie die Zeit verwendet.Sleep () Methode. Der erste Schritt besteht darin, die beiden Python -Bibliotheken zu importieren. Weil dieser Code die Zeit verwendet.Sleep () ”-Methode, der erste Import ist für das„ Thread “-Modul, während der zweite Import für das" Zeit "-Modul gilt. Die Python -Zeit.Sleep () ”“ wird verwendet, um auf die Ausführung eines Programms zu warten. Die Python -Methode „Sleep ()“ kann verwendet werden, um die Leistung eines Programms für einen bestimmten Zeitraum zu stoppen, der in Sekunden festgelegt wurde. Verstehe, dass die Python "Zeit".Sleep () ”“ -Technik beendet nur den aktuellen Thread, nicht das gesamte Programm.

Zwei Funktionen sind definiert. Die erste Funktion in diesem Skript, "Func1", wird verwendet, um zwei Druckanweisungen mit der Funktion "print ()" zu speichern. Die erste Anweisung, die wir mit der Druckanweisung gedruckt haben, lautet "Startfache 1". In der folgenden Zeile haben wir dann die Funktion „Sleep ()“ mit dem Zeitmodul verwendet, um die Zeit auf „20“ Sekunden zu setzen. Anschließend haben wir eine andere Anweisung mit der Funktion print () angerufen: „Thread 1 ist beendet.”

Dann erstellen wir eine zweite Funktion, "func2" und geben zwei Anweisungen an sie weiter. Die erste Aussage, die wir drucken möchten, lautet: "Starten Sie den Thread 2". In der folgenden Zeile setzen wir die Zeitintervalle in Sekunden auf „4“, indem wir die „Zeit verwenden.Sleep () ”Methode. Anschließend verwenden wir die Funktion „print ()“, um die Anweisung „Thread 2 endet“ zu drucken.Nach dem Erstellen der Funktion erstellen wir jetzt zwei Threads und verwenden das Thread -Modul, um die Funktion zu rufen. Bevor dies jedoch dies tun, zeigen wir zuerst die Anweisung „Start“ an. Die erste Funktion, "Func1", wird jetzt unter Verwendung eines Threads aufgerufen und in der neu gebildeten Variablen "T1" gespeichert, die. Danach wird „Func2“ unter Verwendung eines Fadens aufgerufen und in die Variable „T2 platziert.”

Dann haben wir in der folgenden Zeile die Funktion "start ()" mit den Threads "T1" und "T2" bezeichnet, um seine Ausführung zu beginnen. Vor dem Drucken der Aussage "Enden" haben wir die "Zeit" verwendet.Sleep () ”Methode zum Einstellen des Timers für zwei Sekunden. Schließlich haben wir die Funktion "join ()" mit "T2" bezeichnet und die "Zeit" verwendet.Sleep () ”Methode.

In der Ausgabe wurde nun zuerst der Druckanschlagsstart angezeigt, und als wir den Func1 mit Thread angerufen haben, ging er zum Func1 und druckte die Anweisung „Start -Thread 1“ aus. Als wir Zeit für „20“ festlegen, bevor wir die zweite Aussage drucken, ging das System für „20“ Sekunden schlafen. Dann druckte es zum zweiten "Func2" seine Aussage "Start -Thread 2", druckte seine Aussage "Start -Thread 2",. Und wir haben „Zeit benutzt.Sleep () ”Vor dem Drucken seiner beendeten Aussage ging das System für 4 Sekunden schlafen. Da das Zeitintervall zwischen den Anweisungen „Func2“ kleiner ist als die "Func1" -Dendanweisungen, druckt es jetzt die "Func2" -Enendanweisung, die "Thread 2 ist" vor der Erklärung „Func1“, die "Thread" ist, "Thread" ist 1 ist beendet “.

Abschluss

In diesem Artikel wurde zwei Themen verwendet, um den Python -Thread zu diskutieren.Join () ”“ -Technik. Im oben erwähnten Beispiel haben wir eine Funktion konstruiert, die sie mit der Funktion mit dem Modul „Thread“ bezeichnet hat, und die Threads verwendet, um die Methode „join ()“ aufzurufen. Diese Prozedur „join ()“ wartet, bis der erste Thread fertiggestellt wird, bevor der zweite Thread ausgeführt wird. Im obigen Beispiel haben wir auch die Zeit verwendet.Sleep () “, um die Ausführung von Aussagen zu verzögern.