Java
文章平均质量分 92
卜宁
这个作者很懒,什么都没留下…
展开
-
线程池原理解析
线程池基本 一、优势 避免频繁的创建和销毁线程 提供运行效率 合理设置线程池大小,避免因线程数超过硬件资源瓶颈带来的问题 二、类型 Executors.newFixedThreadPool() 创建固定线程长度的线程池 Executors.newCachedThreadPool() 创建不限个数的线程池,空闲线程会在 60s 后被回收 Executors.newSingleThreadEx...原创 2020-03-24 17:45:12 · 312 阅读 · 0 评论 -
Java 并发理解
并发 1、线程的生命周期 public enum State { NEW, RUNNABLE, BLOCKED, WAITING, TIMED_WAITING, TERMINATED; } 在 Thread 类中有一枚举类 State 定义了...原创 2020-03-06 16:50:12 · 217 阅读 · 0 评论 -
Synchronized 解析
锁 Synchronized 1、可用范围 类 public void demo() { synchronized (synchronizedDemo.class) { } } public synchronized static void demo() { } 方法 public synchronized void demo() {...原创 2020-03-06 16:49:41 · 199 阅读 · 0 评论 -
volatile解析
工作模型 缓存一致性协议 (MESI) modify :修改状态,表示共享数据只缓存在当前 CPU 并且是修改状态,也就是缓存的数据与主内存中不一致 shared:共享状态,多个 CPU 缓存中的内容与主内存中内容一致 invalid :失效状态,某个CPU 缓存中的内容进行了修改,对将其余 CPU 缓存中的数据设为 Invalid 状态 exclusively:独有状态,只有某个 CPU 缓存...原创 2020-03-06 16:49:11 · 172 阅读 · 0 评论 -
ReentrantLock 可重入锁理解
ReentrantLock 可重入锁 1、ReentrantLock 类图结构 由类图可以看出 ReentranLock 实现了 Lock 接口,实现了 Lock 接口中的 lock() 方法。 ReentrantLock 中有一个抽象内部类 Sync,继承自 AbstractQueneSynchronized 这个工具类,也就是所谓的 AQS 队列,Sync 内部类中,对 lock 方法进行了...原创 2020-03-06 16:48:29 · 369 阅读 · 0 评论