對Join的理解
class ThreadJoinTest {
public static void main(String[] args) throws InterruptedException{
TestTmp test1 = new TestTmp();
TestTmp test2 = new TestTmp();
TestTmp test3 = new TestTmp();
test1.join(); // join
test2.join(); // join
test1.start();
test2.start();
test3.start();
}
}
class TestTmp extends Thread{
public void run(){
for(int i=0;i<5;i++)
System.out.println(this.getName()+" "+i);
}
}
注意加註釋的兩行程式碼,test1.join()以及test2.join().
此時程式的輸出為:
Thread-1 0
Thread-1 1
Thread-1 2
Thread-1 3
Thread-1 4
Thread-2 0
Thread-2 1
Thread-2 2
Thread-2 3
Thread-3 0
Thread-2 4
Thread-3 1
Thread-3 2
Thread-3 3
Thread-3 4
如果將註釋的兩行去掉,則一種可能的輸出為:
Thread-1 0
Thread-1 1
Thread-1 2
Thread-1 3
Thread-1 4
Thread-2 0
Thread-2 1
Thread-2 2
Thread-2 3
Thread-3 0
Thread-3 1
Thread-3 2
Thread-3 3
Thread-3 4
Thread-2 4
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/11049438/viewspace-967511/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- hash join構建點陣圖的理解
- mysql的left join和inner join的效率對比,以及如何優化MySql優化
- NOT IN、JOIN、IS NULL、NOT EXISTS效率對比Null
- join、inner join、left join、right join、outer join的區別
- 對Hash Join的一次優化優化
- 對js裡的join()、split()、slice()的總結。JS
- sql中的join、left join、right joinSQL
- 對 REST 的理解REST
- 對rose 的理解ROS
- 深入理解mysql之left join 使用詳解MySql
- 關於C#中Thread.Join()的一點理解C#thread
- Mysql join 的本質,Nested Loop Join 和 Hash JoinMySqlOOP
- sql的left join 、right join 、inner join之間的區別SQL
- mysql中的left join、right join 、inner join的詳細用法MySql
- sql之left join、right join、inner join的區別SQL
- hash join\nest loop join\sort merge join的實驗OOP
- 我對抽象的理解抽象
- 對於BFC的理解
- 對事務的理解
- 對於MVVM的理解MVVM
- 對VUE框架的理解Vue框架
- 我對引擎的理解
- 對測試的理解
- 對CustomHTTPProtocol的理解HTTPProtocol
- 自己對Binder的理解
- 加深對 JavaScript This 的理解JavaScript
- 對ORACLE SCN的理解Oracle
- 我對SNS的理解
- 對值物件的理解物件
- 對Oracle cursor的理解Oracle
- 對/etc/oratab的理解
- 對HTML中"#"的理解HTML
- left join,right join,inner join的條件on和where的區別
- oralce之 10046對Hash Join分析
- ZT:簡單介紹join,outer-join,semi-join,anti-join的區別
- MySQL LEFT JOIN/ INNER JOIN/RIGHT JOINMySql
- 對JS閉包的理解JS
- 自己對分頁的理解