CAS與ABA問題產生和解決

樂觀鎖和悲觀鎖 Synchronized屬於悲觀鎖,悲觀地認爲程序中的併發狀況嚴重,因此嚴防死守。CAS屬於樂觀鎖,樂觀地認爲程序中的併發狀況不那麼嚴重,因此讓線程不斷去嘗試更新。html 性能對比: Synchronized關鍵字會讓沒有獲得鎖資源的線程進入blocked狀態,然後在爭奪到鎖資源後恢復爲runnable狀態,這個過程當中涉及到操做系統用戶模式和內核模式的轉換,代價比較高。java
相關文章
相關標籤/搜索