synchronized和lock的區別

一.synchronized的缺陷 若是一個代碼塊被synchronized修飾了,獲取鎖的線程釋放鎖只會有兩種狀況:線程   1)獲取鎖的線程執行完了該synchronized代碼塊,而後線程釋放對鎖的佔有;同步   2)線程執行發生異常,此時JVM會讓線程自動釋放鎖。效率 那麼若是這個獲取鎖的線程因爲要等待IO或者其餘緣由(好比調用sleep方法)被阻塞了,可是又沒有釋放鎖,其餘線程便只能乾巴
相關文章
相關標籤/搜索