多執行緒按照順序執行

2021-09-09 06:50:12 字數 1062 閱讀 5532

自己瀏覽了多個網友的文章,自己的理解加上網友的思路,彙總成了這篇文章

1. 如何讓多執行緒按照既定順序執行

2.原理

1.直接上**

final long start = system.currenttimemillis();

thread t1 = new thread() catch (interruptedexception e)

system.out.println("111="+(system.currenttimemillis()-start));}};

thread t2 = new thread() catch (interruptedexception e)

system.out.println("222="+(system.currenttimemillis()-start));}};

thread t3 = new thread() catch (interruptedexception e)

system.out.println("333="+(system.currenttimemillis()-start));}};

t1.start();

t1.join();

t2.start();

t2.join();

t3.start();

執行結果如下圖:

2.原理:

使用join()方法讓執行緒按照既定順序執行,比如當前執行緒是main執行緒,執行緒t1.start()之後使t1執行緒進入可執行狀態,然後是執行t1.join(),該join方法使當前執行緒迴圈執行wait()方法,使main執行緒阻塞,只要t1執行緒是alive狀態就會一直阻塞,直到t1執行緒執行結束才會繼續向下執行**。

java多執行緒執行順序

我們建立兩個執行緒,讓奇數執行緒輸出奇數,偶數執行緒執行輸出偶數。先來看看 實現 package test import org.ietf.jgss.oid public class threadnum extends thread public void run system.out.printl...

控制多執行緒執行順序

雖然專案用不上,先備份吧,控制多執行緒執行順序有兩種方法 1.通過join方法保證多執行緒的順序性的特性 join 讓主線程等待子執行緒結束後才能繼續執行 public static void main string args throws interrupterexception 2.excuto...

linux c 多執行緒執行順序解析

1 多執行緒設計通常是比較麻煩的,因為它牽涉到,執行緒間的同步 和執行順序問題。在使用者沒有設定執行緒間的排程策略時,系統預設採取基於時間片輪轉的排程策略。本實驗是在預設的排程策略下,測試執行緒間的執行順序問題。本實驗用的系統為ubuntu10.04 thread model posix gcc v...