Synchronized锁原理简介说明

书欣 Java面经 发布时间:2022-07-31 20:40:27 阅读数:19020 1
下文笔者讲述Synchronized锁原理,如下所示

Synchronized锁原理

Synchronize是通过对象头的markwordk来表明监视器的
   监视器本质是依赖操作系统的互斥锁实现的。
操作系统实现线程切换要从用户态切换为核心态,成本很高,此时这种锁叫重量级锁
注意事项:
    1.在JDK1.6以后引入了偏向锁、轻量级锁、重量级锁
     偏向锁:
	      当一段代码没有别的线程访问
		  此时线程去访问会直接获取偏向锁
     轻量级锁:
	      当锁是偏向锁时
           有另外一个线程来访问
           偏向锁会升级为轻量级锁
		     这个线程会通过自旋方式不断获取锁
			   不会阻塞
			    提高性能
     重量级锁:
	      轻量级锁自旋一段时间后线程还没有获取到锁
            线程就会进入阻塞状态
			  该锁会升级为重量级锁
			  重量级锁时
			  来竞争锁的所有线程都会阻塞
              性能降低

      2.锁只能升级不能降级  
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaMianJing/202207/16592718154087.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者