java并发编程
java并发知识的学习
xiaobailx
这个作者很懒,什么都没留下…
展开
-
volatile保证内存可见的原因及有序原因及举例
单例模式的双重校验锁与volatilepublic class Singleton {volatile static Singleton instance;static Singleton getInstance(){ if (instance == null) { //在单例未创建时,此处以及对极了大量线程,如果没有第二重校验 //等解锁后每个线程都会再次创建一个单例 synch...原创 2020-01-13 16:03:43 · 189 阅读 · 0 评论 -
NIO与IO的流程梳理
IO与NIO详解----面试整理在java种我们所说的IO与NIO其实是java对操作系统的IO模型的封装而产生的接口,是我们开发人员不必关注操作系统层面的知识。同步: 同步就是发起一个调用后,被调用者未处理完请求之前,调用不返回。异步: 异步就是发起一个调用后,立刻得到被调用者的回应表示已接收到请求,但是被调用者并没有返回结果,此时我们可以处理其他的请求,被调用者通常依靠事件,回调等机制...原创 2020-01-12 16:26:41 · 391 阅读 · 0 评论 -
并发之CAS的举例详解
CAS原理举例子通俗解释CAS的应用场景:无论是ReenterLock内部的AQS,还是各种Atomic开头的原子类,内部都应用到了CASjava并发过程中,要做到线程安全的考虑:1.sychronized:这种独占锁是采用悲观锁的方式去做的,多个线程去请求资源时会阻塞进行,以保证线程安全。2.volatile关键字:它只能保证内存可见性不能保证原子性,而且对于有多个共享资源的情况下就无...原创 2020-01-07 14:28:42 · 879 阅读 · 0 评论