并发专题
&请叫我坏孩子
这个作者很懒,什么都没留下…
展开
-
并发专题(2)-JVM对Synchronized的优化
Synchronized 原生语法层面的互斥锁 加锁重的原因: Java线程操作映射到OS中,从用户态转换到核心态中。线程各种状态的转换 维护锁计数器 检查需要的锁对象是否被释放 检查是否有被阻塞的线程需要唤醒 底层实现: Synchronized关键字是通过monitorenter和monitorexit字节码指令来控制的。而这两个字节码都需要一个reference类型的参数来指明要锁定和...原创 2019-11-25 19:47:05 · 208 阅读 · 0 评论 -
并发专题(1)-Volatile关键字
JMM 主内存:实际存储数据(共享的信息) 工作内存:(私有信息)每个线程拥有的自己工作内存,将需要的数据从主内存中拷贝一份进行操作,再将数据刷新回到主内存中。 工作方式: 线程修改私有数据,直接在工作空间修改 线程修改共享数据,把数据复制到工作空间中去,在工作空间中修改,修改完成以后,刷新内存中的数据 补充: 在JVM的栈空间中分配。引用的地址存放在工作内存,引用的对...原创 2019-11-24 16:54:05 · 161 阅读 · 0 评论