我需要在应用程序运行时监视JVM空间我使用JMC进行监视但是当我停止tomcat时JMC无法正常工作。
我的目标是我需要验证当应用程序关闭时,所有堆内存(或某些部分)都会被释放以及它释放多少。
有没有可以监控的工具?如果是,建议我。
我的理解是当tomcat或没有java进程运行时Heap会自动被释放。如果错了我就错误
答案 0 :(得分:3)
您可以使用top
或vmstat
等工具(粗略地)监控正在使用的物理和虚拟内存量。
但基本上托马斯是正确的:
简而言之,在退出后,您无需担心JVM消耗资源。
答案 1 :(得分:2)
Java堆是Java进程分配的内存的一部分。 Java VM终止后,将释放包括内存在内的所有资源。
答案 2 :(得分:0)
一旦应用程序停止,进程就会终止并且内存将释放到操作系统
请注意,只要流程结束,就没有GC或其他任何内容 与JVM相关,因为所有这些东西只能起作用 JVM正在运行。
答案 3 :(得分:0)
正如Stephen C引用的那样,你不应该担心在应用程序退出后释放内存。
free -m
命令将在linux节点上显示可用内存。您可以使用此命令验证可用内存使用情况。
free显示系统中可用和已用物理和交换内存的总量,以及内核使用的缓冲区和高速缓存。通过解析/ proc / meminfo来收集信息。