synchronized 原理

synchronized:JVM 是通過進入、退出對象監視器( Monitor )來實現對方法、同步塊的同步的。編譯的時候會在同步的對象插入monitor.enter 指令,在方法退出,或者異常的時候插入monitor.exit指令。 任意線程對一個(synchronized修飾的)對象訪問前,先訪問Monitor,嘗試獲取對象的使用權限,如果成功獲取,線程將進入同步列隊;如果失敗的話,線程將執行
相關文章
相關標籤/搜索