How to find references to unreachable_objects via heap file?

151 Views Asked by At

My java application is frequently used in fullgc. I use jmap -dump:file=xxx to get a heap file. After using the mat tool for analysis, I can't find the problem, but I find that there are many 'unreachable_ Objects' is about 1g. I want to know which code generates so many garbage objects, but mat can't see the details. It can only see the byte[] type. How do I find references to these bytes[]?

Here is my JVM configuration

-server -Xmx6g -Xms6g -XX:NewRatio=2 -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:MaxTenuringThreshold=6 -XX:+ParallelRefProcEnabled -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:+HeapDumpOnOutOfMemoryError -XX:MetaspaceSize=512m -XX:MaxMetaspaceSize=512m -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:/export/Logs/gc.log

Environment

The mat picture is as follows

unreachable_objects

Object histogram

0

There are 0 best solutions below