Java Concurrency
Join()
如現在我們有一個名為t的thread object,在main中我們呼叫t.start()後,再呼叫t.join(),則main function中的下一行必須要等到t這個thread終止之後,才會開始執行。
下面這個例子是沒有用t.join()的程式碼,由於不同的thread可以平行運行,所以看到印出來的結果沒有順序,且每次執行結果都不一樣。
下面這個例子則是在main中,在new了一個thread之後,去start它,並加上了t.join()。這樣的話,main要執行下一個instruction就必須等到t執行完成後,才能再去開下一個thread。
故可以看到,執行出來的結果是有順序的。
留言
張貼留言