單例模式與併發訪問的誤解

單例模式與併發訪問的誤解

單例模式並不能解決併發訪問,static變量或單例模式可以解決單實例問題,單不能解決併發訪問問題,以爲這是兩個概念。

一、單例模式解決了以下問題:
1.如何保證多個對象中創建的實例是同一個
2.如何保證多線程中創建的實例是同一個

二、併發解決了以下問題:
多線程修改同一個實例時產生併發衝突

所以: 併發問題一般出現在單例模式中,非單例模式,即線程獨有的實例是不會發生併發衝突。
建議:單例對象中變量的訪問加鎖控制併發訪問

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章