Sync底层字节码 monitorEnter和monitorExit 对象监视器

目录

命令

同步代码块

[enter 与 exit](#enter 与 exit)

[这边是 1:2](#这边是 1:2)

如果抛出异常

同步方法

字节码

同步静态方法

字节码

为什么任何一个对象都能成为一个锁


命令

同步代码块

enter 与 exit

这边是 1:2

正常完成会解锁

保证异常 over 也会解锁

如果抛出异常

那么只有一个 enter 和 exit

同步方法

字节码

有一个标识

同步静态方法

字节码

跟同步方法相比多了一个静态的标识

为什么任何一个对象都能成为一个锁

Object 类是 Java 所有类的父类

java=c++--

每一个对象都有一个对象监视器

ObjectMonitor 中有几个关键属性

相关推荐
皮皮林5519 小时前
IDEA 源码阅读利器,你居然还不会?
java·intellij idea
databook12 小时前
Manim实现闪光轨迹特效
后端·python·动效
Juchecar13 小时前
解惑:NumPy 中 ndarray.ndim 到底是什么?
python
卡尔特斯13 小时前
Android Kotlin 项目代理配置【详细步骤(可选)】
android·java·kotlin
集成显卡13 小时前
windows 下使用 bat 批处理运行 Chrome 无头模式刷一波访问量
windows·程序员
白鲸开源13 小时前
Ubuntu 22 下 DolphinScheduler 3.x 伪集群部署实录
java·ubuntu·开源
用户83562907805113 小时前
Python 删除 Excel 工作表中的空白行列
后端·python
Json_13 小时前
使用python-fastApi框架开发一个学校宿舍管理系统-前后端分离项目
后端·python·fastapi
ytadpole13 小时前
Java 25 新特性 更简洁、更高效、更现代
java·后端
纪莫13 小时前
A公司一面:类加载的过程是怎么样的? 双亲委派的优点和缺点? 产生fullGC的情况有哪些? spring的动态代理有哪些?区别是什么? 如何排查CPU使用率过高?
java·java面试⑧股