随笔分类 - JUC
摘要:首先要知道CAS CAS Compare and Swap,即比较再交换; 区别于synchronouse同步锁的一种乐观锁(是一种无锁算法) CAS有3个操作数, 内存地址,以直接从内存中获取旧值; 旧的预期值A,代码中的旧值; 要修改的新值B 当且仅当预期值A和内存值V相同时,将内存值V修改为B
阅读全文
摘要:CopyOnWriteArrayList 解决脏读问题;牺牲写的效率,提高读的效率 CopyOnWriteArrayList是一种读写分离的思想体现的ArrayList; 它将读写的操作对象分离开来; 写的过程中,通过复制出一片新的内存,在新的内存中执行完成写操作,再赋值回去,完成写操作; 在写的过
阅读全文
摘要:Latch:门闩。一种线程通信的方式;当程序不涉及同步,仅仅需要线程通信的时候,使用synchronize或者lock的线程通信等待唤醒机制,就显得太重了; 这时候,可以考虑使用信号量类:CountDownLatch,cylicbarrier,semaphore CountDownLatch是一个多
阅读全文
摘要:创建线程池可以分为三种方式: 1. 通过ThreadPoolExecutor的构造方法,创建ThreadPoolExecutor的对象,即一个线程池对象; 此构造方法,一共7个参数,5个必须参数,2个带有默认值的参数;详细后面说; 传送:https://www.cnblogs.com/mussess
阅读全文
摘要:创建线程池可以分为三种方式: 1. 通过ThreadPoolExecutor的构造方法,创建ThreadPoolExecutor的对象,即一个线程池对象; 此构造方法,一共7个参数,5个必须参数,2个带有默认值的参数;详细后面说; 传送:https://www.cnblogs.com/mussess
阅读全文
摘要:其中有一些值的概念不太清楚,参考了: https://blog.csdn.net/lsgqjh/article/details/63685058(这一位大佬,讲的很细!!) https://blog.csdn.net/mulinsen77/article/details/84583716 Lock接
阅读全文

浙公网安备 33010602011771号