Java——》synchronized互斥性

news/2024/5/17 15:21:45 标签: java, synchronized, , MarkWord, 对象头

推荐链接:
    总结——》【Java】
    总结——》【Mysql】
    总结——》【Redis】
    总结——》【Kafka】
    总结——》【Spring】
    总结——》【SpringBoot】
    总结——》【MyBatis、MyBatis-Plus】
    总结——》【Linux】
    总结——》【MongoDB】
    总结——》【Elasticsearch】

Java——》synchronized互斥性

synchronized互斥,每个线程获取synchronized时,基于synchronized绑定的对象去获取

类型描述
(匿名偏向)
偏向查看对象头中的MarkWord里的线程ID是否是当前线程。
- 如果是,拿执行业务
- 如果不是,CAS尝试修改,修改他几次,不成,再升级为轻量级
轻量级查看对象头中的MarkWord里的Lock Record指针指向的是否是当前线程的虚拟机栈。
- 如果是,拿执行业务
- 如果不是,CAS尝试修改,修改他几次,不成,再升级到重量级
重量级查看对象头中的MarkWord里的指向的ObjectMonitor,查看owner是否是当前线程。
- 如果是,拿执行业务
- 如果不是,扔到ObjectMonitor里的EntryList中,排队,并挂起线程,等待被唤醒。

在这里插入图片描述


http://www.niftyadmin.cn/n/5027278.html

相关文章

QT 点击窗口外区域 当前窗口自动关闭

想要通过弹出自定义窗口展示自定义的一些信息,同时也希望像右键菜单一样(点击非菜单区域,菜单自动关闭)的效果,那么你可以按照以下两种方式进行尝试: 设置窗口标识的方式 在构造函数中添加以下代码&#…

Linux系统编程6(线程互斥,锁,同步,生产消费模型)

上篇文章介绍完线程的概念后,我们将在这篇文章中初步探讨线程编程以及线程应用中的问题,这篇文章将以抢票系统为例,贯穿整篇文章。笔者将介绍在多线程编程中会出现的问题,什么是同步?什么是互斥?为什么多线…

JS Array 操作方法合集

数组方法 1. 创建数组1.1 使用 Array 构造函数1.2 Array.of 方法创建数组(es6 新增)1.3 Array.from 方法创建数组(es6 新增) 2. join 方法3. split 方法4. 数组的翻转和排序(改变数组)4.1 reverse 翻转数组4.2 sort 排序 5. concat 拼接方法6. slice 截取方法6.1 arr.slice(sta…

ASEMI二极管1N4148(T4)的用途和使用建议

编辑-Z 二极管是一种常见的电子元件,其中1N4148(T4)是一款广泛使用的快恢复二极管。它具有快速的开关特性和高反向阻挡能力,适用于多种电子应用。本文将介绍1N4148(T4)的特点、用途和如何正确使用该二极管…

APP自动化之weditor工具

由于最近事情颇多,许久未更新文章。大家在做APP自动化测试过程中,可能使用的是Appium官方提供的inspect进行元素定位,但此工具调试不方便,于是今天给大家分享一款更好用的APP定位元素工具:weditor weditor基于web网页…

数学建模熵权法中信息熵与信息熵冗余度的理解

具体步骤:数学建模——熵权法-腾讯云开发者社区-腾讯云 (tencent.com) 灵感来源:信息熵越大,信息量到底是越大还是越小? - 骚动的白米饭的回答 - 知乎 https://www.zhihu.com/question/274997106/answer/1055696026 信息熵在第二…

佳能mp4格式化后覆盖并chkdsk恢复案例(EOS R6)

佳能EOS R6是佳能的经典之作,是佳能针对索尼ILCE系列的反击,不过我个人仍然觉得索尼ILCE在成像方面更胜一筹。之前也讲过很多R6的恢复案例,但是下边这个不太一样,因为客户格式化后重新拍了不少照片,并且做了CHKDSK操作…

fastadmin 基本使用配置

fastadmin 版本 1.3.5 thinkphp 版本 5.0.25 配置 cache 为 redis 保存 // ---------------------------------------------------------------------- // | 缓存设置 // ---------------------------------------------------------------------- cache …