jvm
惟是致良知
这个作者很懒,什么都没留下…
展开
-
Java字节码理解
Java字节码其实就是 .class 文件.我们写出的Java源代码经过编译后就会变成 class文件。编译过程源代码是程序员写的。JVM识别不了,因此需要编译器主要对源码代码做编译处理,大致如下:词法分析器 => 语法分析器 => 语法树/抽象语法树 => 语义分析器 => 注解抽象语法树 => 字节码生成器 => class文件这个过程涉及编译原理,就不说了。执行以下命令即可对类进行编译javac XXX.javaClass文件.原创 2020-08-01 19:36:10 · 604 阅读 · 0 评论 -
Java的synchronized 了解
Java中的锁在 Java 中主要2种加锁机制:synchronized 关键字java.util.concurrent.Lock (ReentrantLock是该接口的一个常用实现)两者在底层存在一些差别:synchronized 是关键字,通过一对字节码指令 monitorenter/monitorexit 实现。java.util.concurrent.Lock 利用Java 代码和sun.misc.Unsafe 中的本地调用实现的。Unsafe 包不是Java规范的一部分...原创 2020-06-30 23:52:57 · 175 阅读 · 0 评论 -
IntelliJ IDEA jprofiler安装及性能分析
Eclicpse 中可以集成MAT,即 Memory Analyzer Tool。进行性能分析。而IntelliJ 里面可以用jprofiler 进行vm 性能分析。jprofiler功能JProfile是一款性能瓶颈分析工具,监控粒度可以细化到某一个类包。主要功能有:1.内存剖析 Memory profiler2.堆遍历 Heap walker3.CPU 剖析 CPU profiler4.线程剖析 Thread profiler5.VM 遥感勘测技术 VM telemetry原创 2020-06-16 00:02:14 · 3635 阅读 · 2 评论