JVM-堆

一、概念

堆是Java虚拟机内存结构中的一部分。通过new关键字创建的对象都会分配在堆中。堆中的对象是线程共享的,需要考虑线程安全问题,堆中有垃圾回收机制。

二、堆内存溢出

虽然堆中有垃圾回收机制,但是如果当堆中的数据都仍需要使用,便不能被回收。因此大量的数据是有可能造成堆内存溢出的。

三、堆内存诊断工具
  1. jps:查看当前系统中有哪些Java进程
  2. jmap:查看堆内存占用的情况 jmap -heap pid
  3. jconsole:可视化工具
  4. jvisualvm:一个功能强大的Java应用程序监控、分析和调试工具,提供了丰富的可视化界面和插件机制,帮助用户更好地了解和管理Java应用程序的运行状态,优化应用程序的性能。
相关推荐
程序员黑豆4 小时前
Java 注释详解:单行、多行与文档注释的完整指南
java·前端·ai编程
wuyk5555 小时前
第2章:六步换相原理全解+STM32工程实战
c语言·开发语言·stm32·单片机·嵌入式硬件
hey_sml5 小时前
JAVA每日一学---CompletableFuture中thenApply与thenCompose区别详解
java·开发语言
Doraemomo5 小时前
数据结构-环形链表
java·数据结构·链表
萧瑟余晖7 小时前
Java深入解析篇十七之SpringCloud
java·开发语言
是未才7 小时前
从输入 URL 到页面返回:DNS、路由、TLS 与 HTTP 完整链路
java·后端·计算机网络
ttod_qzstudio8 小时前
Java 常用语法极简通关(五):类与对象——字段、方法、构造器、this 与 static
java·开发语言·python
萧瑟余晖9 小时前
Java深入解析篇十七之Spring Security
java·开发语言·spring
不老刘10 小时前
【Java入门】Java服务部署方式全景对比:从java -jar到K8s
java·kubernetes·jar
离陌在学C#11 小时前
C# 重载与重写:深入理解面向对象编程的核心概念
java·c#