According to Java Concurrency in Practice, chapter 11.4.3 says:
Lock splitting can sometimes be extended to partition locking on a variablesized set of independent objects, in which case it is called lock striping. For example, the implementation of ConcurrentHashMap uses an array of 16 locks, each of which guards 1/16 of the hash buckets; bucket N is guarded by lock N mod 16.
I still have problems to understand and visualize the lock striping and buckets mechanism. Can someone explain this with good understanding words :)
Thanks in advance.
See Question&Answers more detail:os