并发
文章平均质量分 94
最底层的程序员
这个作者很懒,什么都没留下…
展开
-
线程池学习笔记
文章目录线程生命状态线程的创建方式协程线程池ThreadPoolExcuter工作流程线程池生命状态重要API线程数量设置 线程 线程是调度CPU资源的最小单位,线程模型分为KLT模型与ULT模型,JVM使用的KLT模型,Java线程与OS线程保持1:1的映射关系,也就是说有一个java线程也会在操作系统里有一个对应的线程。Java线程有多种生命状态。 生命状态 NEW 新建 RUNNABLE 运行 BLOCKED 阻塞 WAITINT 等待 TIMED_WAITING 超时等待 TERMINATED 终原创 2021-06-09 21:59:04 · 313 阅读 · 0 评论 -
并发编程-同步锁学习笔记
文章目录synchronized(隐式锁)底层原理锁升级对象头偏向锁轻量级锁自旋锁重量级锁锁消除逃逸分析Lock(显示锁) synchronized(隐式锁) 同步实例方法:锁加载在类上,new出来的不同的对象也可以保持同步。 同步类方法:锁加载非static方法,锁的是this对象,new出来的不同的对象不会同步。 同步代码块:只锁当前代码块。 底层原理 synchronized是基于JVM内置锁实现,通过内部对象Monitor(监视器锁)实现,基于进入与退出Monitor对象实现方法与代码块同步,监原创 2021-05-05 09:34:25 · 337 阅读 · 0 评论 -
并发编程-JMM学习笔记
文章目录CPU内存和缓存三级缓存内存管理线程模型KLT(java使用的是KLT)ULTJMM主内存工作内存八大原子操作同步规则分析原子性&有序性&可见性原子性有序性可见性内存屏障MESI(缓存一致性协议) CPU 内存和缓存 内存是cpu共享,缓存是cpu独享。 缓存都是由做小的存储区块-缓冲行(cacheline)组成,缓冲行大小通常为64byte。 三级缓存 为了提升CPU速度,有了三级缓存的概念,L1,L2,L3,L1和L2是内核独享,一个内核只有一个L、L2,L3是多核共享。 存原创 2021-05-03 13:21:37 · 127 阅读 · 0 评论