java并发
MTmantou
这个作者很懒,什么都没留下…
展开
-
ConcurrentHashMap工作原理分析(深入理解)
本文主要是总结ConcurrentHashMap的一些知识点,以及自己的一些理解。如有理解不当请大家指出。谢谢!!1.为什么会有ConcurrentHashMap1.首先,读过HashMap源码我们应该清楚,HashMap在扩容(resize)的时候(有的地方时说再put操作,其实是一样的,因为put操作的时候,会判断是否需要resize),会涉及到链表指针的移动,在单线程下面是...原创 2019-08-21 22:35:35 · 568 阅读 · 0 评论 -
volatile 深入理解(JMM内存模型)
目录1.什么是volatile?2.JMM内存模型 2.1JMM是什么 2.2JMM中封装的原子操作3.volatile如何保证可见性 3.1什么是可见性?---- 一个线程对共享变量的修改,能够及时的被其他线程看到 3.2为什么会存在可见性? -----源于计算机缓存机制 3.3volatile如何保证可见性...原创 2019-09-09 16:55:32 · 714 阅读 · 0 评论 -
java并发、自旋CAS、原子类 atomicInteger(深入理解)
目录1.什么是CAS? ---比较并交换(compare and swap)1.1 AtomicInteger是什么?1.2 AtomicInteger 小Demo2.CAS的底层原理2.1 一句话解释:Unsafe类和自旋锁2.2Unsafe类2.3自旋锁3.CAS的优缺点?3.1CAS优点3.2CAS缺点4.CAS存在的问题4.1...原创 2019-09-09 17:33:24 · 1301 阅读 · 0 评论 -
synchronized原理 深入分析
本博客主要是对Java并发中synchronized关键字进行较为深入的分析,这些知识点结合博主对synchronized的个人理解以及相关的书籍的讲解(在结尾参考资料),如有误处,欢迎留言。1.synchronized的三种应用方式Java中每一个对象都可以作为锁,这是synchronized实现同步的基础:普通同步方法(实例方法),锁是当前实例对象 ,进入同步代码前要获...原创 2019-09-17 21:19:22 · 250 阅读 · 0 评论 -
java并发之集合类不安全问题深入分析
一、List public static void listNotSafe(){ List<String> list = new ArrayList<>(); //new ArrayList<>(); 低层是new的数组 List<String> list1 = Collections.synchronize...原创 2019-09-19 15:16:39 · 145 阅读 · 0 评论