深入理解JAVA虚拟机
文章平均质量分 87
星河浅洋
渣渣程序员
展开
-
JAVA虚拟机之GC
垃圾收集器和内存分配策略对象存活判断垃圾收集算法垃圾收集器选择收集器对象存活判断存活判断算法判断对象是否需要被进行垃圾回收主要是需要判断对象是否“存活”。下面介绍引用计数算法和可达性分析算法。引用计数算法顾名思义就是给对象添加引用计数器,当有地方引用这个对象时,计数器加一,当计数器为零时,说明对象死去,可以进行垃圾回收,这个算法的弊端同样很明显,当有两个不再使用的对象,彼此之间相互引用,则计数器永远不为零,无法对其进行垃圾回收。然而可达性分析算法可以解决这个问题,可达性分析算法主要是通原创 2021-04-11 02:49:45 · 90 阅读 · 0 评论 -
虚拟机性能监控、故障处理工具
虚拟机性能监控、故障处理工具基础工具jpsjstatjinfojmapjhatjstack基础工具JPS(JVM Process Status Tool)jps类似UNIX中的ps命令,可以列出正在运行的虚拟机进程,并显示虚拟机执行主类名称以及本地虚拟机唯一ID(LVMID)。命令格式:jps [options] [hostid]jps可以查询开启了RMI服务的远程虚拟机进程状态,参数hostid就是RMI注册表的主机名。选项可选参数见下表。选项说明原创 2021-04-11 19:42:13 · 102 阅读 · 0 评论 -
JVM内存模型
JVM内存区域与内存溢出异常程序计数器虚拟机栈本地方法栈java堆方法区运行常量池直接内存对象的创建与内存布局对象的访问定位OOM异常运行时数据区域java虚拟机运行过程产生的数据区域中主要包括:堆、方法区、虚拟机栈、本地方法栈、程序计数器。其中程序计数器、虚拟机栈、本地方法栈为线程私有;堆、方法区为线程共有,也是发生垃圾收集的区域。程序计数器程序计数器可以看作是字节码文件里的行号指示器,字节码解释器工作就是改变计数器的值来控制执行的字节码指令。程序计数器是唯一不会发生OO原创 2021-04-11 02:48:14 · 323 阅读 · 0 评论