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

目录

命令

同步代码块

[enter 与 exit](#enter 与 exit)

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

如果抛出异常

同步方法

字节码

同步静态方法

字节码

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


命令

同步代码块

enter 与 exit

这边是 1:2

正常完成会解锁

保证异常 over 也会解锁

如果抛出异常

那么只有一个 enter 和 exit

同步方法

字节码

有一个标识

同步静态方法

字节码

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

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

Object 类是 Java 所有类的父类

java=c++--

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

ObjectMonitor 中有几个关键属性

相关推荐
Coder_Boy_1 小时前
技术发展的核心规律是「加法打底,减法优化,重构平衡」
人工智能·spring boot·spring·重构
牛奔1 小时前
Go 如何避免频繁抢占?
开发语言·后端·golang
寻星探路5 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
lly2024066 小时前
Bootstrap 警告框
开发语言
2601_949146537 小时前
C语言语音通知接口接入教程:如何使用C语言直接调用语音预警API
c语言·开发语言
曹牧7 小时前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言
KYGALYX7 小时前
服务异步通信
开发语言·后端·微服务·ruby
zmzb01037 小时前
C++课后习题训练记录Day98
开发语言·c++
ValhallaCoder7 小时前
hot100-二叉树I
数据结构·python·算法·二叉树