【发布时间】:2014-01-10 03:35:12
【问题描述】:
我尝试打印出可读的 java 字节码以查看 monitorenter 和 monitorexit 以研究死锁和同步指令集,但我不知道应该使用什么 java 命令或二进制文件来获取可读的 java 字节码。
【问题讨论】:
-
javap -c <classname>
标签: java command deadlock bytecode instruction-set
我尝试打印出可读的 java 字节码以查看 monitorenter 和 monitorexit 以研究死锁和同步指令集,但我不知道应该使用什么 java 命令或二进制文件来获取可读的 java 字节码。
【问题讨论】:
javap -c <classname>
标签: java command deadlock bytecode instruction-set
使用javap命令,例如:
javap -v SomeClass.class
示例输出:
19:23:56 (brettw) [dev] hikari$ javap -v HikariPool.class
Classfile /Users/brettw/Documents/dev/HikariCP/core/target/classes/com/zaxxer/hikari/HikariPool.class
Last modified Dec 19, 2013; size 11754 bytes
MD5 checksum 00e0441d0aad3bad1f4e7a67f6043b9c
Compiled from "HikariPool.java"
public final class com.zaxxer.hikari.HikariPool implements com.zaxxer.hikari.HikariPoolMBean
SourceFile: "HikariPool.java"
InnerClasses:
#384; //class com/zaxxer/hikari/HikariPool$1
minor version: 0
major version: 51
flags: ACC_PUBLIC, ACC_FINAL, ACC_SUPER
Constant pool:
#1 = Class #2 // com/zaxxer/hikari/HikariPool
#2 = Utf8 com/zaxxer/hikari/HikariPool
#3 = Class #4 // java/lang/Object
#4 = Utf8 java/lang/Object
#5 = Class #6 // com/zaxxer/hikari/HikariPoolMBean
#6 = Utf8 com/zaxxer/hikari/HikariPoolMBean
...
【讨论】: