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

目录

命令

同步代码块

[enter 与 exit](#enter 与 exit)

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

如果抛出异常

同步方法

字节码

同步静态方法

字节码

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


命令

同步代码块

enter 与 exit

这边是 1:2

正常完成会解锁

保证异常 over 也会解锁

如果抛出异常

那么只有一个 enter 和 exit

同步方法

字节码

有一个标识

同步静态方法

字节码

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

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

Object 类是 Java 所有类的父类

java=c++--

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

ObjectMonitor 中有几个关键属性

相关推荐
人活一口气4 小时前
从JVM调优到MCP协议:Java全栈技术体系深度总结与企业级架构实践
java·spring boot
NE_STOP6 小时前
Vibe Coding -- 完整项目案例实操
java
荣码6 小时前
GraphRAG:普通RAG只能回答"点"的问题,我踩了4个坑才搞懂
java·python
SimonKing6 小时前
Google第三方授权登录
java·后端·程序员
明月光8186 小时前
从一行 @Builder 说起:重新拾起 Java 的 Lombok、注解与 Builder 模式
java
考虑考虑15 小时前
Mybatis实现批量插入
java·后端·mybatis
咖啡八杯16 小时前
GoF设计模式——中介者模式
java·后端·spring·设计模式
金銀銅鐵17 小时前
[Python] 基于欧几里得算法,实现分数约分计算器
python·数学
Lyn_Li19 小时前
Kaggle Top 5 | 198只股票、200条数据的金融预测——BattleFin高分方案从零复现
python·kaggle·比赛复盘·金融预测
青石路20 小时前
记一次多JDK版本问题的排查,一坑套一坑,差点没爬上来
java