線程同步的方法:
(1)wait():使一個線程處於等待狀態,並且釋放所持有的對象的lock。
(2)sleep():使一個正在運行的線程處於睡眠狀態,是一個靜態方法,調用此方法要捕捉 InterruptedException異常。
(3)notify():喚醒一個處於等待狀態的線程,注意的是在調用此方法的時候,並不能確切的 喚醒某一個等待狀態的線程,而是由JVM確定喚醒哪個線程,而且不是按優先級。
(4)notityAll ():喚醒所有處入等待狀態的線程,注意並不是給所有喚醒線程一個對象的鎖, 而是讓它們競爭。