Heim >Java >javaLernprogramm >So führen Sie Threads in Java nacheinander aus

So führen Sie Threads in Java nacheinander aus

王林
王林nach vorne
2019-11-25 14:01:062902Durchsuche

So führen Sie Threads in Java nacheinander aus

In der folgenden Spalte des Java-Eingabeprogramms wird erläutert, wie Threads in Java sequenziell ausgeführt werden. Ich hoffe, dass es für Sie hilfreich ist!

Wir müssen ein solches Anwendungsszenario absolvieren:

1. Tester, Produktmanager und Entwickler kommen nacheinander ins Unternehmen. 3. Produktmanager planen neu Anforderungen; 4. Entwickler entwickeln neue erforderliche Funktionen; 5. Tester testen neue Funktionen.

Planungsanforderungen, Entwicklung neuer Funktionen und Testen neuer Funktionen erfolgen nacheinander. Wir betrachten Thread1 als Produktmanager, Thread2 als Entwickler und Thread3 als Tester.

Verwenden Sie die Join-Methode des Threads

join(): Es handelt sich um die Methode von Theard. Ihre Funktion besteht darin, dass der aufrufende Thread warten muss, bis der Join()-Thread abgeschlossen ist bevor es weiter verwendet werden kann.

Anwendungsszenario: Die Join-Methode kann verwendet werden, wenn ein Thread darauf warten muss, dass ein anderer Thread die Ausführung beendet.

Das Beispiel sieht wie folgt aus:

package com.zhangsf.javabase.thread.order;
/**
 * @author zhangsf
 * 通过子程序join使线程按顺序执行
 */
public class ThreadJoinDemo {
    public static void main(String[] args) {
        final Thread thread1 = new Thread(new Runnable() {
            @Override
            public void run() {
                System.out.println("产品经理规划新需求");
            }
        });
        final Thread thread2 = new Thread(new Runnable() {
            @Override
            public void run() {
                try {
                    thread1.join();
                    System.out.println("开发人员开发新需求功能");
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }
        });
        Thread thread3 = new Thread(new Runnable() {
            @Override
            public void run() {
                try {
                    thread2.join();
                    System.out.println("测试人员测试新功能");
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }
        });
        System.out.println("早上:");
        System.out.println("测试人员来上班了...");
        thread3.start();
        System.out.println("产品经理来上班了...");
        thread1.start();
        System.out.println("开发人员来上班了...");
        thread2.start();
    }
}

Ergebnis ausführen:

So führen Sie Threads in Java nacheinander aus

Verwenden Sie die Join-Methode des Hauptthreads

Hier wird join() im Hauptthread verwendet, um den Thread zu blockieren.

package com.zhangsf.javabase.thread.order;
/**
 * @author zhangsf
 * 通过主程序join使线程按顺序执行
 */
public class ThreadMainJoinDemo {
    public static void main(String[] args) throws Exception {
        final Thread thread1 = new Thread(new Runnable() {
            @Override
            public void run() {
              System.out.println("产品经理正在规划新需求...");
            }
        });
        final Thread thread2 = new Thread(new Runnable() {
            @Override
            public void run() {
                System.out.println("开发人员开发新需求功能");
            }
        });
        final Thread thread3 = new Thread(new Runnable() {zzzz
            @Override
            public void run() {
                System.out.println("测试人员测试新功能");
            }
        });
        System.out.println("早上:");
        System.out.println("产品经理来上班了");
        System.out.println("测试人员来上班了");
        System.out.println("开发人员来上班了");
        thread1.start();
        //在父进程调用子进程的join()方法后,父进程需要等待子进程运行完再继续运行。
        System.out.println("开发人员和测试人员休息会...");
        thread1.join();
        System.out.println("产品经理新需求规划完成!");
        thread2.start();
        System.out.println("测试人员休息会...");
        thread2.join();
        thread3.start();
    }
}

Betriebsergebnisse:

So führen Sie Threads in Java nacheinander aus

Es gibt viele Möglichkeiten, Threads nacheinander auszuführen, und ich werde sie Ihnen in Zukunft einzeln vorstellen .

Das obige ist der detaillierte Inhalt vonSo führen Sie Threads in Java nacheinander aus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen