2014-10-09 54 views
-2

我新的線程,我只是寫了一個簡單的程序來理解這個概念,這個節目給我的輸出爲:主題 - 多線程

一個 四 三 回到主 兩個 主

public class Sample_thread{ 
    public static void main(String[] args){  
     Runnable m= new Master(); 
     Thread master = new Thread(m); 

     Runnable p1 = new one(); 
     Thread t1 = new Thread(p1);  

     Runnable p2 = new two(); 
     Thread t2 = new Thread(p2); 

     Runnable p3 = new Three(); 
     Thread t3 = new Thread(p3); 

     Runnable process_4 = new Four(); 
     Thread t4 = new Thread(p4); 

     master.start(); 
     t1.start(); 
     t2.start(); 
     t3.start(); 
     t4.start(); 

     System.out.println("Back in main");  
    } 
} 

我在每個線程的run方法中打印線程名稱。爲什麼訂單在顯示中發生了變化?

我認爲它會顯示如下

主 一個 兩個 三 四 回到主

任何一個可以解釋我這個?這是因爲我沒有提到同步?

+0

每個線程究竟做什麼?運行時是否打印? – Clark 2014-10-09 16:37:36

回答

1

有讀取使用多線程的整點是執行,可以以任何順序出現很大程度上是獨立行動。如果你想按照設定的順序輸出,你可以在一個線程中使用循環。