![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java并发
多么温暖的阳光啊
这个作者很懒,什么都没留下…
展开
-
ThreadLocal源码分析
get原创 2020-05-08 20:30:56 · 118 阅读 · 0 评论 -
【Java并发】volatile关键字
参考 【死磕Java并发】-----深入分析volatile的实现原理 Java并发编程:volatile关键字解析 java修饰词 CS-Notes Java面试热点——synchronized原理剖析与优化原创 2020-05-01 11:02:18 · 119 阅读 · 0 评论 -
【Java并发】synchronized优化
CAS CAS的全称是 Compare And Swap(比较相同再交换),是现代CPU广泛支持的一种对内存中的共享数据进行操作的一种特殊指令 作用:CAS可以将比较和交换转换为原子操作,这个原子操作直接由CPU保证,CAS可以保证共享变量赋值时的原子操作 CAS操作依赖三个值:内存中的值V、旧的预估值X、要修改的新值B,如果内存中的值V = 旧的预估值X,就将新值B保存到内存中。 CAS原理...原创 2020-04-30 22:02:25 · 119 阅读 · 0 评论 -
【Java并发】synchronized原理分析
synchronized使用 synchronized能够保证再同一时刻最多只有一个线程执行该段代码,以达到保证并发安全的效果。 synchronized (锁对象) { // 受保护资源 } synchronized与原子性 下面代码中,number++是个非原子性操作,使用synchronized修饰后,即可保证其原子性。 public class AtomicitySync { ...原创 2020-04-24 19:05:27 · 240 阅读 · 1 评论 -
Java内存模型(JMM)
计算机结构简介 五大组成部分:控制器(Control)、运算器(Datapath)、存储器(Memory)、输入(Input System)、输出(Output System)。原创 2020-04-23 22:41:51 · 165 阅读 · 0 评论 -
并发编程中存在的三个问题
并发编程中存在的三个问题:原子性、可见性、有序性,这三个问题都会导致获取共享数据出错,产生并发问题 原子性 原子性(Atomicity):在一次或多次操作中,要么所有的操作都执行并且不会受其他因素干扰而中断,要么所有的操作都不执行。 出现原子性问题的两个前提:至少有两个线程、有个共享变量 原子性问题:当一个线程对共享变量操作到一半时,另外的线程也可能来操作共享变量,干扰了前一个线程的操作。 p...原创 2020-04-23 19:16:27 · 298 阅读 · 0 评论