04 2018 档案
摘要:实现一个jstack 在聊Jstack得工作原理前呢,不如让我们先写一个简单的jstack玩玩。不用怕,很简单的,就几行代码的事,看: public class MyJstack { public static void main(String[] args)throws Exception { V
阅读全文
摘要:大家都知道,类被加载到JVM是放在所谓的方法区: JDK7之前是持久代(PermGen),JDK7开始是元空间(metaspace)。所以不免也会简单地认为,类的成员变量(变量本身,而不是变量指向的对象)也是分配在方法区里。 本篇呢,就通过HSDB这个工具,来分析下类的静态变量到底在哪里分配,同时熟
阅读全文
摘要:作为一个开发人员,我们的程序无时不刻不在跟内存打交道,那你真的理解程序所使用的内存吗? 背景 前几天,我的知识星球(有兴趣的欢迎加入:https://t.zsxq.com/EUn6IIE)的一个圈友咨询我一个问题:他已经将java启动参数设置为-Xms1g -Xmx1g,启动后,他动过top命令观察
阅读全文
摘要:magic[4字节] 魔数,用来判断是否可以被虚拟机使用。固定值为0xCAFEBABE(咖啡宝贝)minor_version[2字节] 次版本号major_version[2字节] 主版本号,低版本的jdk无法执行高版本的class文件。constant_pool_count[2字节] 常量池里的项
阅读全文