首页 > 其他 > 详细

synchronized

时间:2020-09-11 23:24:59      阅读:61      评论:0      收藏:0      [点我收藏+]

锁消除:JVM通过逃逸分析发现作为锁的对象是局部对象时,则会把锁消除来提高性能。

锁粗化:当JVM发现一个线程不停地进行一个资源的请求与释放时(循环),则会将同步代码块的范围扩大,提高性能。

偏向锁:消除事实上只有一个线程的情况下CAS造成的浪费问题。

轻量锁:如果持有锁的线程能在很短时间内释放锁资源,那么其他线程则不需要阻塞,可以通过自旋的方式获得锁,避免重量级锁的阻塞和唤醒,提高程序的响应速度。

重量级锁:在多线程同时竞争激烈的情况下,不使用自旋,不会消耗CPU。

static synchronized:全局锁,针对类,无论实例多少个对象,都共享该锁。

 

synchronized

原文:https://www.cnblogs.com/kunwu/p/13654249.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!