关于Java 1.6集合库中ConcurrentHashMap.Segment
的设计:
static final class Segment<K,V> extends ReentrantLock implements Serializable
恕我直言,给定的
Segment
不是-ReentrantLock
,那么为什么要使用此extends
?它应该是一个组成:static final class Segment<K,V> implements Serializable { ReentrantLock lock = ... }
最佳答案
Javadoc说:
段是哈希表的专用版本。该子类
来自ReentrantLock的机会,只是为了简化一些锁定
并避免单独建造。
考虑到这是一个非公开的内部类,我想他们在性能,易用性和良好设计之间进行了权衡。
关于java - ConcurrentHashMap.Segment是ReentrantLock吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8954155/