2013-05-03 21 views
1

由於的ConcurrentHashMap可以在寫操作不是100%安全的一致性(即尺寸()),使用的ReentrantReadWriteLock(或它是通過定製派生的),而是可以提高性能,對吧?在ConcurrentHashMap中,爲什麼不到位的ReentrantLock的上段使用的ReentrantReadWriteLock

+0

你爲什麼不寫一個基準,看看? (提示:獲得典型用例的良好覆蓋面將會非常棘手......) – 2013-05-03 03:41:31

+0

是的,我知道,但是我想知道ConcurrentHashMap的一般場景。 – 2013-05-03 04:15:33

+0

沒有這種通用場景。您所提議的性能影響將會*變化*取決於地圖的使用方式。 – 2013-05-03 05:09:47

回答

2

性能改進將取決於您想要執行的操作類型。如果你想在線程正在寫入的時候讀取更多的信息,那麼肯定是肯定的[即採取了寫入鎖定],否則其他線程無法讀取或寫入鎖定,因此性能增益不會在那裏。

相關問題