JVM
老夫不老
这个作者很懒,什么都没留下…
展开
-
JVM-浅谈
JVM运行时数据区相关组成看下图:1 不同线程有自己的程序计数器,虚拟机栈和本地方法栈,但是公用方法区和Heap堆,因此多线程运行会有安全问题2 栈(stack)是存放方法的局部变量的内存空间,每个方法都会分配一块内存空间frame,方法一旦执行完成,frame就被销毁,对于原始类型,变量的值也保存在stack中,对于引用类型,stack里保存的是指向对象的内存地址(引用)栈的...原创 2019-08-07 17:27:03 · 134 阅读 · 0 评论 -
JVM-内存模型JMM
Java内存模型(JMM)根据JDK版本不同模型不同一、 JDK8-内存模型主要是方法区和Heap1 新生代:存放新的对象,1/3内存空间,频繁的创建对象,触发MinorGc(复制算法,98%会被回收)进行垃圾回收 ------------------------ | Eden 8 | 小的新的对象,太大会直接放到老年代 | Serv...原创 2019-08-07 18:04:11 · 111 阅读 · 0 评论 -
JVM -GC&内存
活跃数据应用程序长期稳定运行时存活对象再堆中占用内存大小。取得日志可能不准确,需要多次取得取得平均值分配比例如下: 总空间:3-4n 新生代:1-1.5n 老年代:2-3n 永久代:1.2-1.5n运行时最大内存: RunTime.getRuntime().maxMemory/(double)1024/1024运行时内存: R...原创 2019-08-07 18:35:17 · 134 阅读 · 0 评论