多線程Lock

1.可重入鎖

如果鎖具備可重入性,則稱作爲可重入鎖。synchronized和ReentrantLock都是可重入鎖,可重入性在我看來實際上表明瞭鎖的分配機制:基於線程的分配,而不是基於方法調用的分配。

2. 讀寫鎖

讀寫鎖將對一個資源(比如文件、Map、List)的訪問分成了2個鎖,一個讀鎖和一個寫鎖。

讀鎖,可以讓多個線程之間的讀操作不會發生衝突。

ReadWriteLock就是讀寫鎖,它是一個接口,ReentrantReadWriteLock實現了這個接口。

可以通過readLock()獲取讀鎖,通過writeLock()獲取寫鎖。

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