1
class Runner extends Thread{
public void run(){
for(int i=0;i<5;i++)
{
System.out.println("Counting "+i);
}
}
}
public class App {
public static void main(String args[])
{
Runner runner1=new Runner();
runner1.start();
Runner runner2=new Runner();
runner2.start();
}
}
我剛剛通過java中的線程基礎知識。預期的輸出是:Java線程:運行一個簡單的java線程程序輸出混淆
Counting 0
Counting 0
Counting 1
Counting 1
Counting 2
Counting 2
Counting 3
Counting 3
Counting 4
Counting 4
,但我越來越喜歡這個斜面的輸出似乎理了這一點:
Counting 0
Counting 1
Counting 2
Counting 3
Counting 4
Counting 0
Counting 1
Counting 2
Counting 3
Counting 4
您的期望是錯的不是輸出:) – Shail016 2014-10-31 04:59:48
計數顯示順序將改變請插入在運行這些代碼method.IT將工作。因爲兩個線程同時運行並非一個接一個。 – Visme 2014-10-31 05:02:07
您可能需要計數到100或1000以查看輸出交錯。第一個線程完成,而你仍然開始從'主)第二個線程('。 – markspace 2014-10-31 05:18:40