synchronized和lock使用上的区别以及volatile的使用范围
1、两者的区别
2、lock:
3、synchronized:
4、synchronized关键字是防止多个线程同时执行一段代码,会影响程序执行的效率,而volatile关键字在某些情况下要优于synchronized,但是volatile关键字是无法替代synchronized关键字,因为volatile关键字无法保证操作的原子性。一般来说,使用volatile必须具备以下条件:
1)对变量的写操作不依赖与当前值;
2)该变量没有包含在具有其他变量的不变式中;
例如用于状态标记量和double chec
原创
2020-07-30 16:47:17 ·
288 阅读 ·
0 评论