一個程序中可以有多條執行線索同時執行,一個線程就是程序中的一條執行線索,每 個線程上都關聯有要執行的代碼,即可以有多段程序代碼同時運行,
每個程序至少 都有一個線程,即main方法執行的那個線程。如果只是一個cpu,它怎么能夠同時執 行多段程序呢?這是從宏觀上來看的,cpu一會執行a線索,
一會執行b線索,切換時 間很快,給人的感覺是a,b在同時執行,好比大家在同一個辦公室上網,只有一條鏈 接到外部網線,其實,這條網線一會為a傳數據,
一會為b傳數據,由於切換時間很短 暫,所以,大家感覺都在同時上網。
狀態:就緒,運行,synchronize阻塞,wait和sleep掛起,結束。wait必須在synchroniz ed內部調用。 調用線程的start方法后線程進入就緒狀態,
線程調度系統將就緒狀態的線程轉為運行狀態,遇到synchronized語句時,由運行狀態轉為阻塞,當synchronized獲得鎖后,由 阻塞轉為運行,
在這種情況可以調用wait方法轉為掛起狀態,當線程關聯的代碼執行 完后,線程變為結束狀態。