![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
jvm
不懂小v
Everything are arranegmented.
展开
-
垃圾收集算法
垃圾收集器的工作职责(John McCarthy, Lisp 语言) –什么内存需要收集(判定无用的对象) –什么时候回收(何时启动,不影响程序正常运行)–如何回收(回收过程,要求速度快/时间短/影响小) 1. Reference counting(引用计数) –每个对象都有一个引用计数器 –有引用,计数器加一,当引用失效,计数器减 一–计数器为0的对象,将被回收 优点:对程序的执行来说,每次操作只需要花费很小块的时间。(简单,效率高)这对于不能被过长中断的实时系统来说有着天然的优势 缺点:无原创 2020-09-10 17:03:49 · 116 阅读 · 0 评论 -
JVM垃圾收集器:引用类型
对象存活在它最近的一对大括号 Object的finalize方法,垃圾收集器在回收对象时调用,有且只被调用一次 System的gc方法,运行垃圾回收器 基于对象引用判断无用对象(零引用,互引用) 对象引用链,依赖关系串联 GC:Garbage Collector GC Roots对象: –虚拟机栈中引用的对象 –方法区中类静态属性引用的对象 –方法区中常量引用的对象 –本地方法栈中引用的对象 对象引用 强引用 –例如Object obj = new Object(); Object原创 2020-09-10 15:30:39 · 136 阅读 · 0 评论 -
JVM参数
一、JVM默认运行参数 –支持JVM运行的重要配置,根据操作系统/物理硬件不同而不同–使用 -java -XX:+PrintFlagsFinal -version | findstr HeapSizel 显示VM的参数 二、程序启动的两类参数 –程序参数:程序需要,存储在main函数的形参数组中 –虚拟机参数:更改默认配置,用以指导进程运行 三、堆(Heap) –共享,内存大户,存储所有的对象和数组 –-Xms初始堆值,-Xmx最大堆值 需要加大内存-Xmx40M 四、JV.原创 2020-09-07 21:35:05 · 113 阅读 · 0 评论 -
JVM内存分类
目录 JVM原理图 Java自动内存管理 JVM内存-线程私有内存 –程序计数器(Program Counter Register)(存储当前方法) –Java虚拟机栈(JVM Stack)(方法的栈帧) –本地方法栈(Native Method Stack)(存储native方法信息) JVM内存-多线程共享内存 –堆(Heap) (存储对象和数组) –方法区(Method Area)(存储类结构/常态/静态变量) –运行时常量池(Run-Time Constant Pool)(.原创 2020-09-07 21:16:28 · 193 阅读 · 0 评论