程序计数器: 是当前线程所执行的字节码的行号指示器,每条线程都要有一个独立的程序计数器,这类内存也称为“线程私有”的内存。正在执行java方法的话,计数器记录的是虚拟机字节码指令的地址(当前指令的地址)。如果还是Native方法,则为空。这个内存区域是唯一一个在虚拟机中没有规定任何OutOfMemo ...
分类:
其他好文 时间:
2021-07-14 18:47:45
阅读次数:
0
当有很多对象成为垃圾时,复制可以做得很好,但是复制许多生命周期长的对象时它就变得很糟(要反复复制它们)。用于新生代 标记-整理适合生命周期长对象可以做得很好(只复制一次),但是不适合短生命的对象。用于老年代 JVM 1.2 及以后版本使用 分代垃圾收集(generational garbage co ...
分类:
其他好文 时间:
2021-06-20 18:01:11
阅读次数:
0
那么我们在开始介绍Java内存区域之前,我们先放一张内存区域的图,方便我们后面介绍的时候可以对照着看。 须知,本文是根据JDK8来介绍的。 程序计数器 首先它是线程私有的,它也称为代码的行号指示器,字节码解释器就是通过改变程序计数器的位置来确定下一行要执行的代码,它不存在OOM。 如果线程正在执行一 ...
分类:
其他好文 时间:
2021-06-07 20:29:28
阅读次数:
0
作用: JAVA语言-(编译器)->字节码指令-(JVM)->机器码 JVM指令: 指令 详情 描述 数据交换指令 内存区域之间的传递和交换 JVM内存包括:操作数栈、局部变量表、Java堆、常量池、方法区。 JVM执行逻辑运算在操作数栈中,不管数据是在堆栈中还是常量池,最终都会将数据传送到操作数栈 ...
分类:
其他好文 时间:
2021-06-02 20:56:39
阅读次数:
0
一,创建线程池时,可能使用Excutors的四种方式。 newSingleThreadExecutor()和 newFixedThreadPool(int nThreads),内部实现队列为 LinkedBlockingQueue。LinkedBlockingQueue 是一个由链表实现的有界阻塞队 ...
分类:
其他好文 时间:
2021-06-02 15:01:54
阅读次数:
0
说明 线上内存告警占用了90%+ 订单服务占用了42% 8.3g,分析订单服务是否可以降低配置。 分析 1.查看应用实际占用内存 cat /proc/{pid}/status 2.查看jvm启动参数 3.查看高峰期的时候jvm内存增长率 jstat -gcutil {pid} 1000 500 10 ...
分类:
其他好文 时间:
2021-05-25 18:17:51
阅读次数:
0
一、前言 在本文中,我们总结下抓 Java dump 的几种不同方法。 Java Heap Dump 是特定时刻 JVM 内存中所有对象的快照。它们对于解决内存泄漏问题和分析 Java 应用程序中的内存使用情况非常有用。 Java Heap Dump 通常以二进制格式的 hprof 文件存储。我们可 ...
分类:
编程语言 时间:
2021-05-24 08:07:55
阅读次数:
0
#引言 垃圾回收(GC,Garbage Collection) 在笔者上一篇文章中(JVM内存模型),介绍了JVM内存模型以及JVM运行时的数据区,堆是JVM内存区域里面最大的一块区域,用于存放实例数据,因此这一块区域是垃圾回收的重点区域,而堆为了提高垃圾回收效率,又被分为了年轻代和老老年,年轻代又 ...
分类:
其他好文 时间:
2021-05-24 07:35:23
阅读次数:
0
异常概述 异常指程序运行中出现的不期而至的各种状况,如:文件找不到、网络连接失败、非法参数等。 异常发生在程序运行期间,它影响了正常的程序执行流程。 异常发生的原因有很多,通常包含以下几大类: 用户输入了非法数据。 要打开的文件不存在。 网络通信时连接中断,或者JVM内存溢出。 要理解Java异常处 ...
分类:
编程语言 时间:
2021-02-19 13:12:17
阅读次数:
0
一、Jmap,Jstack,Jinfo命令详解 二、Jvisualvm调优工具实战 三、JVM内存或CPU飙高如何快速定位 四、Jstat命令预估JVM运行情况 五、系统频繁FullGC导致系统卡顿实战调优 六、内存泄漏到底是怎么回事 ...
分类:
其他好文 时间:
2021-02-01 11:37:18
阅读次数:
0