lock和synchronized的同步區別與選擇

區別以下: 1. lock是一個接口,而synchronized是java的一個關鍵字,synchronized是內置的語言實現;(具體實現上的區別在《Java虛擬機》中有講解底層的CAS不一樣,之前有讀過如今又遺忘了。) 2. synchronized在發生異常時候會自動釋放佔有的鎖,所以不會出現死鎖;而lock發生異常時候,不會主動釋放佔有的鎖,必須手動unlock來釋放鎖,可能引發死鎖的發生
相關文章
相關標籤/搜索