在Linux系統中,可以通過以下命令查看JVM內存使用情況:
top
命令查看整個系統的進程狀態和資源使用情況:top
在top命令的輸出結果中,找到Java進程對應的PID(進程ID),然后按Shift + e
鍵,可以按照內存使用情況對進程排序。
jstat
命令查看JVM內存使用情況:jstat -gc <PID> <間隔時間> <顯示次數>
其中,<PID>
是Java進程的PID,<間隔時間>
是采樣間隔時間(單位為毫秒),<顯示次數>
是顯示的次數。例如,可以使用以下命令每1秒鐘采樣一次,總共顯示5次:
jstat -gc <PID> 1000 5
該命令將會顯示JVM的堆內存使用情況,包括堆大小、已使用大小、已提交大小、年輕代和老年代的使用情況等。
jmap
命令生成堆轉儲快照:jmap -dump:file=<文件路徑> <PID>
其中,<文件路徑>
是生成的堆轉儲快照文件的路徑,<PID>
是Java進程的PID。
jcmd
命令查看JVM的詳細信息:jcmd <PID> VM.command_name
其中,<PID>
是Java進程的PID,<command_name>
是需要查看的命令名稱。例如,可以使用以下命令查看堆內存使用情況:
jcmd <PID> GC.heap_info
該命令將會顯示JVM的堆內存信息,包括堆大小、已使用大小、年輕代和老年代的使用情況等。
請注意,上述命令中的<PID>
是Java進程的PID,可以通過ps
命令或者jps
命令查看。