Heim > Java > javaLernprogramm > Wie kann die Ausführung des Hauptthreads sichergestellt werden, nachdem mehrere Threads abgeschlossen sind?

Wie kann die Ausführung des Hauptthreads sichergestellt werden, nachdem mehrere Threads abgeschlossen sind?

Mary-Kate Olsen
Freigeben: 2024-10-28 02:50:02
Original
328 Leute haben es durchsucht

How to Ensure Main Thread Execution After Multiple Threads Complete?

Warten auf den Abschluss mehrerer Threads

In dem von Ihnen beschriebenen Szenario werden mehrere Threads erstellt und jeder führt dieselbe Aufgabe unabhängig aus , muss eine Möglichkeit gefunden werden, den Hauptthread anzuhalten, bis die Ausführung aller erzeugten Threads abgeschlossen ist. Dies ist wichtig, um eine ordnungsgemäße Koordination sicherzustellen und zu verhindern, dass der Haupt-Thread fortfährt, bevor die sekundären Threads abgeschlossen sind.

Eine effektive Lösung besteht darin, ein Array von Thread-Objekten zu erstellen, um alle erzeugten Threads zu speichern, sie gleichzeitig zu starten und dann Implementieren einer Schleife, die die Methode „join()“ für jeden Thread im Array aufruft. Die Methode „join()“ blockiert den aufrufenden Thread, bis der Thread, bei dem sie aufgerufen wird, beendet wird.

Durch die Einbindung dieser Schleife in Ihre DoSomethingInAThread-Klasse können Sie zuverlässig warten, bis alle sekundären Threads abgeschlossen sind, bevor Sie mit der Ausführung des Hauptthreads fortfahren:

<code class="java">// Array to store created threads
private static Thread[] threads;

public static void main(String[] args) {
    // Create an array to store the threads
    threads = new Thread[1000];

    // Start all the threads
    for (int n = 0; n < 1000; n++) {
        Thread t = new Thread(new DoSomethingInAThread());
        t.start();
        // Save the reference to the created thread
        threads[n] = t;
    }

    // Wait for all threads to complete
    for (int i = 0; i < threads.length; i++) {
        threads[i].join();
    }</code>
Nach dem Login kopieren

Durch die oben gezeigte Änderung der main()-Methode fährt der Hauptthread erst fort, wenn alle sekundären Threads die Ausführung abgeschlossen haben. Diese Technik stellt sicher, dass die Ausführung des Hauptthreads mit der Fertigstellung aller seiner untergeordneten Threads synchronisiert wird.

Das obige ist der detaillierte Inhalt vonWie kann die Ausführung des Hauptthreads sichergestellt werden, nachdem mehrere Threads abgeschlossen sind?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage