
JVM
TheBestBadGuy
这个作者很懒,什么都没留下…
展开
-
垃圾回收器
常见垃圾回收器串行垃圾收集器(Serial Garbage Collector)、并行垃圾收集器(Parallel Garbage Collector)、CMS(并发)垃圾收集器(CMS Garbage Collector)、G1垃圾收集器(G1 Garbage Collector)1.1 串行垃圾收集器**使用单线程进行垃圾回收,垃圾回收时,只有一个线程在工作,并且java应用中所有的线程...原创 2019-10-29 21:53:57 · 263 阅读 · 0 评论 -
垃圾回收算法
1 常见的垃圾回收算法常见的垃圾回收算法有:引用计数法、标记清除法、标记压缩法、复制清除法、分带算法等1.1 引用计数法1.1.1 原理假设有一个对象A,只要有一个对象对A存在引用那么A的引用计数器+1,当引用失败时其引用计数器-1,如果A的引用计数器的值为0,那么其为垃圾,可以被回收。1.1.2优缺点优点:* 实时性高,无需等到内存不够的时候,才开始回收。* 在垃圾回收过程中对...原创 2019-10-29 20:45:34 · 360 阅读 · 0 评论 -
JVM优化
为什么要进行JVM优化?在本地开发环境中我们很少有需求对JVM进行优化,但是到了生产环境我们的程序可能出现如下问题:运行的引用“卡住了”,日志不输出,程序没反应服务器的CPU负载突然升高在多线程应用下,如何合理的分配线程的数量。。。。。。。。。通过Java -server和java -client设置JVM的运行参数server VM的初始堆空间会大一些,默认使用的是并行垃圾回...原创 2019-10-29 19:52:24 · 3125 阅读 · 0 评论 -
JVM内存模型
JVM中存在的空间栈:方法运行时进入的内存,里面还会存储程序中的局部变量堆:new出来的对象都存在于该内存方法区:在JVM规范中该区域属于堆,但实现中不属于堆字节码文件加载时进入的内存内存模型加载字节码文件demo_Memory:静态主方法main进入方法区中的demo_Memory.Class中的静态方法区中Student:name age 进入s...原创 2019-10-29 15:34:27 · 213 阅读 · 0 评论 -
JVM之堆与栈及垃圾回收
JVM规范与实现在JVM规范中方法区属于堆;而常量池属于方法区==》常量池属于堆在JVM实现中没有去遵守这个规则;方法区(no-heap)不属于堆在JVM规范中Eden区和幸存者区(s0,s1)的比例为1:1在JVM实现中Eden:s0:s1 = 8:1:1堆示意图堆的空间比例:年轻代:年老代=1:2年轻代中:Eden:to survior(s0):from survi...原创 2019-10-29 14:34:08 · 1061 阅读 · 0 评论