Synchronized
2021-08-10 16:26:32 12 举报
synchronized
作者其他创作
大纲/内容
堆
原子性
synchronized
重量级锁
被Volatile修饰的变量修改时具有多线程可见性
发展jdk1.4以前 sync锁属于重量级锁jdk1.5 引入了Lock锁(AQS)jdk1.6 增强了sync锁
数组长度(数组才有)
栈
Volatile
3.以CAS的方式把对象头中的Mark Word变成指向栈中锁记录的指针
锁升级
可见性
Lock
成员变量
多线程并发的三个特性
偏向锁
Mark Word
有序性
对象头
Class Mata Data Address
加锁
程序执行的顺序按照代码的先后顺序执行
轻量级锁
java解决多线程并发
1.创建存储锁记录的空间2.把对象头中的Mark Word复制到锁记录
即一个操作或者多个操作 要么全部执行并且执行的过程不会被任何因素打断,要么就都不执行
当多个线程访问同一个变量时,一个线程修改了这个变量的值,其他线程能够立即看得到修改的值
填充数据
synchronized (对象){ 同步代码块 }
0 条评论
下一页