ConcurrentHashMap源码学习分析
类注释的翻译:
/*是一种支持 全并发查询操作和高并发修改操作的哈希表*/
A hash table supporting full concurrency of retrievals and high expected concurrency for updates.
/*查询操作不加锁,因此会和修改操作冲突,所以查询操作返回的是最新修改的值*/
Retrieval operations (including {@code get}) generally do not block. so may
overlap with update operations (including {@code put} and {@code remove}).Retrievals
reflect the results of the most recently <em>completed</em> update operations holding upon their onset.
/*对于批量修改操作,查询操作获取的结果可能是修改操作完成后的子集,换个说法,查询操作获取的结果是整个Hashtable的snapshot*/
For aggregate operations such as {@code putAll} and {@code clear}, concurrent retrievals may reflect insertion or removal of only some entries.
/*对于需要扫描整个table的表来说,必须是单线程的,因此会给整个table加锁*/
Bear in mind that the results of aggregate status methods including {@code size}, {@code isEmpty}, and {@