
JVM
文章平均质量分 74
zyplanke
捅破IT背后的那层窗户纸
展开
-
Java启动通用参数,自动记录GC等信息到专门日志文件中
若某个信息带gc标签和thread标签的同时还带有其他标签则无法匹配,不会输出。若某个信息带gc标签和thread标签的同时还带有其他标签则无法匹配,不会输出。若某个信息带gc标签和thread标签的同时还带有其他标签则匹配,输出。命令格式:-Xlog[:[selections][:[output][:[decorators][:output-options]]]]若某个信息带gc标签的同时还带有其他标签则无法匹配,不会输出。若某个信息带gc标签的同时还带有其他标签则可以匹配,会输出。原创 2024-11-29 15:01:15 · 1117 阅读 · 0 评论 -
Java异常分类和关系
Java异常分类和结构,包括Throwable、Exception、RuntimeException等。还包括unchecked exception、checked exception原创 2021-05-25 15:20:24 · 285 阅读 · 0 评论 -
JAVA线程状态(New、Runnable、Blocked、Waiting、Timed waiting、Terminated)
Java线程状态概述在Java中,线程可以有如下 6 种状态: New (新创建) Runnable (可运行) Blocked (被阻塞) Waiting (等待中) Timed waiting (计时等待) Terminated (被终止)具体见图(图来源:https://www.uml-diagrams.org/java-thread-uml-state-machine-diagram-example.html)New新创建 创建一个Thread对...原创 2021-02-16 01:51:16 · 1427 阅读 · 2 评论 -
JVM中字符串常量池StringTable在内存中形式分析
JVM中翻译字符串常量池(StringTable)为“String类型常量表”更合适,常量表它存储以双引号包住的String对象的地址引用,而不是String对象本身。通过StringTable可以实现相同内容的字符串共享。 在Java 8,StringTable是存放在内存堆中。(注意与Constant Pool的区别)。以下两类会纳入“字符串常量表StringTable”管理:已双引号包住形式申明的字符串String对象String对象intern()方法获得的String对象原创 2020-09-20 22:57:29 · 784 阅读 · 1 评论 -
JAVA中常量池、运行时常量池、字符串常量池区别
JAVA中静态常量池、运行时常量池、字符串常量池区别看上去很相近的概念容易混淆,区分如下(注意英文单词的区别)静态常量池(Constant Pool)运行时常量池(run-time constant pool)字符串常量池(StringTable)原创 2020-09-20 18:50:05 · 1145 阅读 · 0 评论 -
Java对象头Object Header、偏向锁、轻量锁、重量锁研究
Java对象头Object Header。包括markword、klasspoint。里面有hashcode、gc 的age,还有锁状态,包括:偏向锁、轻量锁、重量锁研究原创 2020-06-22 00:27:31 · 1340 阅读 · 0 评论