java并发
xuzf_0120
本人爱软件开发,现从事java技术的开发
展开
-
volatile底层原理
volatile主要是实现了线程之间的变量的共享可见 为了提高访问效率,处理器不会直接和系统内存做通信,而是会通过高速缓存行和系统内存做通信。缓存行是高速内存中的最小存储单位,每次读写操作都是对一整行缓存行进行读写。 写操作时,处理器会把数据写到内存缓存的区域中,它会首先检查这个区域的内存地址是否存在于高速缓存行中,如果存在的话,则将这块内存缓存更新到高速缓存中(不会更新到系统内存中),如果高原创 2017-12-20 20:20:45 · 436 阅读 · 0 评论 -
synchronized的实现原理和应用
1、synchronized的加锁形式主要有三种: 实例对象上加锁(通过可以同步实例方法或者同步一个实例对象) Class对象上加锁,比如同步静态方法或者同步Class对象 方法块上加锁,将锁加到方法块上。 2、jvm对synchronized的实现方式: 无论是对方法同步还是对方法块同步,jvm都是通过Monitor对象来协助完成,但是两者的具体实现不一样。 代码原创 2017-12-20 20:21:34 · 213 阅读 · 0 评论