
JVM
小_北_辰
这个作者很懒,什么都没留下…
展开
-
线程排错命令小记
1.查看进程中线程的cpu占用情况; 1).先用 top命令定位到进程; 2).通过ps命令查看具体的哪个线程CPU使用高 ps H -eo pid,tid,%cpu | grep 进程号 3)查看具体问题(这里注意要对线程号进行16进制换算) jstack 进程号 ...原创 2019-11-10 14:01:45 · 259 阅读 · 0 评论 -
Java 对象实例化过程
Java对象的实例化过程是一个相对复杂但非常核心的概念,它涉及到Java的内存管理、类加载、对象的创建和初始化等多个方面。1.当一个类首次被主动使用时(例如,创建类的实例、访问类的静态变量或静态方法、调用类的反射方法等),JVM的类加载器会加载这个类。:把类的.class文件中的数据读入到内存中,通常是创建一个字节数组读入.class文件,然后产生与所加载类对应的Class对象。需要注意的是,以上步骤是一个简化的描述,实际的Java对象实例化过程可能涉及更多的细节和复杂性。(即被static修饰的变量)。原创 2024-06-27 21:27:47 · 771 阅读 · 0 评论 -
String中intern()理解
这个知识点,以前算是一道很好的面试题,现在好像已经过时了,但出于对String的理解,还是一个不错的小知识点。这里简单分享两个小demo: 1.jdk6版本demo /** * * jdk6 版本 中 字符串常量池在永久代里运行时常量池中 * * */ public class TestString { @Test public void test() { String s1 = "xiao"; String s2 = "chen";原创 2021-01-30 19:21:00 · 312 阅读 · 1 评论 -
jvisualvm 中visual gc 的配置
jvisualvm中默认未配置visual gc,而在实际jvm调优中, 插件更容易观察gc情况,配置如下: 打开jvisualvm点击工具中的插件 在弹出界面中勾选Visual gc, 点击安装,在弹出的界面中一路默认即可; 这里可能由于网络原因下载失败,点击重试; 安装完成点击完成,重新启动jvisualvm就能看到Visual GC ...原创 2019-05-28 23:41:44 · 2236 阅读 · 0 评论