文章 2024-08-13 来自:开发者社区

JVM自动内存管理之垃圾收集算法

前一篇已经了解过JVM有哪些运行时数据区域,以及每个区域的作用即存储了哪些数据,本篇文章将了解JVM对这块区域内存的回收方案。 因为机器内存是有限制的,不可能让程序一直运行并不停分配内存,而不对无需再使用的内存进行回收管理再利用,因此内存的回收管理是很重要的 内存回收管理即垃圾收集工作的正常进行一定要完成下面3个工作 第一、哪些内存是需要回收的? 第二、什么时候回收呢? 第三、怎么回收...

JVM自动内存管理之垃圾收集算法
文章 2024-08-13 来自:开发者社区

JVM自动内存管理之运行时内存区

​前言:本文是讲解关于JVM内存区域介绍的文章,主要参考了《Java虚拟机规范Java SE 8版》。 Rapid自动内存管理可以说是jvm特性中最优秀的特性之一,Java程序员不用关心内存泄漏和内存溢出问题,还可以更加专注的关系业务功能开发,能够提高JAVA程序员的生产效率,不像C++程序员需要对每个对象由始到终的生命负责。 这种特性虽然带来了很多的好处,但是一旦出现内存泄漏或者内存溢出的...

JVM自动内存管理之运行时内存区
文章 2024-08-01 来自:开发者社区

JVM常见面试题(二):JVM是什么、由哪些部分组成、运行流程,JDK、JRE、JVM关系;程序计数器,堆,虚拟机栈,堆栈的区别是什么,方法区,直接内存

目录 一、JVM基本介绍——概念、组成、重点 1.1 JVM是什么1.2 JVM由哪些部分组成,运行流程是什么?1.3 JDK、JRE、JVM 关系1.4 学习什么 二、JVM组成 2.1 什么是程序计数器2.2 你能详细地介绍堆吗2.3 什么是虚拟机栈2.4 垃圾回收是否涉及栈内存2.5 栈内存分配越大越好吗2.6 方法内的局部变量是否线程安全2.7 什么情况下会导...

JVM常见面试题(二):JVM是什么、由哪些部分组成、运行流程,JDK、JRE、JVM关系;程序计数器,堆,虚拟机栈,堆栈的区别是什么,方法区,直接内存
文章 2024-07-31 来自:开发者社区

(九)JVM成神路之性能调优、GC调试、各内存区、Linux参数大全及实用小技巧

引言    本章节主要用于补齐之前GC篇章以及JVM运行时数据区的一些JVM参数,更多的作用也可以看作是JVM的参数列表大全。对于开发者而言,能够控制JVM的部分也就只有启动参数了,同时,对于JVM的性能调优而言,JVM的参数也是基础。 “本篇主要用于记录一些常用的JVM参数,方便之后使用时快速查找”。  ...

文章 2024-07-30 来自:开发者社区

(五)JVM成神路之对象内存布局、分配过程、从生至死历程、强弱软虚引用全面剖析

引言 在上篇文章中曾详细谈到了JVM的内存区域,其中也曾提及了:Java程序运行过程中,绝大部分创建的对象都会被分配在堆空间内。而本篇文章则会站在对象实例的角度,阐述一个Java对象从生到死的历程、Java对象在内存中的布局以及对象引用类型。 一、Java对象在内存中的布局 Java源代码中,使用new关键字创建出的对象实例,我们都知道在运行时会被分配到内存上存储,但分配的时候是直接在内存...

(五)JVM成神路之对象内存布局、分配过程、从生至死历程、强弱软虚引用全面剖析
文章 2024-07-30 来自:开发者社区

(四)JVM成神路之深入理解虚拟机运行时数据区与内存溢出、内存泄露剖析

引言 前面的文章中重点是对于JVM的子系统进行分析,在之前已经详细的阐述了虚拟机的类加载子系统以及执行引擎子系统,而本篇则准备对于JVM运行时的内存区域以及JVM运行时的内存溢出与内存泄露问题进行全面剖析。 一、全面详解JVM运行时内存区域 JVM在运行Java程序时,会把自身管理的内存分为若干个不同的数据区域,这些区域各自都有各自的用途,同时,不同的区域也有着不同的生命周期,有些区域随着...

(四)JVM成神路之深入理解虚拟机运行时数据区与内存溢出、内存泄露剖析
文章 2024-07-30 来自:开发者社区

深入理解Java虚拟机:内存管理与性能优化

Java虚拟机(JVM)是Java技术的核心,它使得Java语言能够实现“一次编写,到处运行”的承诺。然而,对于许多Java开发者来说,JVM仍然是一个神秘的黑盒子。了解JVM的工作原理不仅能够帮助我们更好地理解Java程序的运行机制,还能指导我们进行有效的性能调优。 内存管理是JVM最为重要的职责...

文章 2024-07-28 来自:开发者社区

Jinfo 查看 jvm 配置及使用 Jstat 查看堆内存使用与垃圾回收

本文为博主远传,未经允许不得转载:   1. Jinfo 查看正在运行的Java应用程序的扩展参数: 包含 JVM 参数与 java 系统参数   命令:  jinfo pid               ...

Jinfo 查看 jvm 配置及使用 Jstat 查看堆内存使用与垃圾回收
文章 2024-07-28 来自:开发者社区

jmap 查看jvm内存大小并进行dump文件内存分析

本文为博主原创,未经允许不得转载:   1.jmap的使用     Jmap 可以用来查看内存信息,实例个数以及占用内存大小.     jmap -histo[:live] 打印每个class的实例数目,内存占用,类全名信息. VM的内部类名字开头会加上前缀”*”. 如果子参数加上live后,只统计活的对象数量.     命令: ...

jmap 查看jvm内存大小并进行dump文件内存分析
文章 2024-07-25 来自:开发者社区

JVM内存问题之当老年代缓慢增加且Full GC无法清除时,应如何使用MAT进行分析

问题一:当老年代缓慢增加且Full GC无法清除时,应如何使用MAT进行分析? 当老年代缓慢增加且Full GC无法清除时,应如何使用MAT进行分析? 参考回答: 首先通过jmap命令获取Java堆的转储文件,然后在MAT中加载该文件。在MAT中,可以通过OQL查询语言找到老年代中的对象,并分析哪些线程或类实例长期存在于老年代中而无法被GC回收。 ...

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

产品推荐

Java开发者

Java开发者成长课堂,课程资料学习,实战案例解析,Java工程师必备词汇等你来~

+关注