Loading

摘要: 1.OopMap 在正式的GC之前,要进行可达性分析来标记出将来可能要宣告死亡的对象。如果每次GC的时候都要遍历所有的引用,这样的工作量是非常大的。因为在可达性分析的时候要保证期间不发生引用关系的变化,所有执行线程要停顿等待,称为“Stop The World”,程序中的线程需要停止来配合可达性分析 阅读全文
posted @ 2020-08-10 23:54 Chiakiiii 阅读(367) 评论(0) 推荐(0) 编辑
摘要: JVM垃圾回收(GC) 1. 判断对象是否可以被回收 引用计数法:每个对象有一个引用计数属性,新增一个引用时计数加1,引用释放时计数减1,计数为0时可以回收。此方法简单,但无法解决对象相互循环引用的问题。 // 循环引用 Node a=new Node(); Node b=new Node(); a 阅读全文
posted @ 2020-08-10 23:24 Chiakiiii 阅读(305) 评论(0) 推荐(0) 编辑
摘要: Java内存区域 1. 进程与线程 进程:进程是程序的一次执行过程。系统运行一个程序就是进程从创建到运行再到消亡的过程。 线程:一个进程中包含多个线程,线程共享进程的堆和方法区的资源以及直接内存,同时线程私有资源的包括程序计数器、虚拟机栈和本地方法栈。 2. JVM运行时区域 2.1 程序计数器: 阅读全文
posted @ 2020-08-10 21:05 Chiakiiii 阅读(208) 评论(0) 推荐(0) 编辑