![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java虚拟机
爆裂码手
I thought coding was easy.
展开
-
反射中Class.forName()和ClassLoader.loadClass()的区别
Java类的加载过程装载:通过累的全限定名获取二进制字节流,将二进制字节流转换成方法区中的运行时数据结构,在内存中生成Java.lang.class对象;链接:执行下面的校验、准备和解析步骤,其中解析步骤是可以选择的;校验:检查导入类或接口的二进制数据的正确性;(文件格式验证,元数据验证,字节码验证,符号引用验证)准备:给类的静态变量分配并初始化存储空间;解析:将常量池中的符号引用转成...原创 2019-01-07 09:53:59 · 210 阅读 · 0 评论 -
Java虚拟机学习——内存分配策略
如何判断对象已死引用计数法在Java虚拟机中不经常出现 弊端:互相引用问题,导致计数都不为0,无法通知GC收集器去回收可达性分析没有到任何引用链相连,则被判定是可回收的对象对象优先在Eden分配大多数情况下,对象在新生代Eden区中分配。 当Eden区没有足够空间进行分配时,虚拟机将发起一次Minor GC。Minor GC和Full GC新生代GC(Minor GC):指发生在新...原创 2019-01-24 10:52:08 · 229 阅读 · 0 评论 -
JVM 优化
Tomcat 启动命令行中的优化参数,就是 JVM 的优化 。Tomcat 首先跑在 JVM 之上的,因为它的启动其实也只是一个 java 命令行,首先我们需要对这个 JAVA 的启动命令行进行调优。不管是 YGC 还是 Full GC,GC 过程中都会对导致程序运行中中断,正确的选择不同的 GC 策略,调整 JVM、GC 的参数,可以极大的减少由于 GC 工作,而导致的程序运行中断方面的问题,进...转载 2019-04-18 14:31:30 · 231 阅读 · 0 评论