Java笔记2.7--ConcurrentHashMap展示并发,集合,源码

jdk1.7和1.8的差别,介绍ConcurrentHashMap

通过put 和get源码,了解ConcurrentHashMap的底层结构和hash流程

以CAS+Synchronized管理并发的方式

实例介绍volatile含义

1.引出话题

HashMap和线程不安全对象时候

并发和volatile时

回答数据结构hash表,红黑树等

HashMap和SynchronizedMap区别

1.jdk1.7以“锁”segment的方式保证并发

2.jdk1.8中以“CAS”的方式保证并发

3.SynchronizedMap的put和get封装了HashMap的相关方法,通过互斥锁保证线程安全

4.ConcurrentHashMap做put时,用CAS+Synchronized保证线程安全,更轻量

总结:

1.通过底层源码,展示ConcurrentHashMap的数据结构

2.通过put方法,展示了CAS等并发能力

3.通过put方法,引出红黑树话题

4.通过get方法,展示了hash表冲突相关的技能

5.通过基于ConcurrentHashMap的实例,展示了volatile的相关技能

猜你喜欢

转载自blog.csdn.net/lfanchenyu/article/details/107630781