高性能編程專題--多線程併發編程--鎖的概念和synchronized關鍵字原理

在開始前,先介紹一下Java中有關鎖的概念。 從不一樣的維度,鎖能夠有不一樣的分類方式: 樂觀鎖:假定沒有併發衝突,在嘗試修改數據時會有一個比較的過程,若是發現數據和以前獲取的不一致,則讀取最新數據,再次操做並從新嘗試修改 悲觀鎖:假定必定會有併發衝突,直接同步全部對數據的相關操做,從讀取數據就開始上鎖java 自旋鎖:爲了避免放棄CPU執行時間,循環使用CAS技術對數據嘗試進行更新,直至成功。自
相關文章
相關標籤/搜索