我的应用程序使用的内存比我想象的要多得多,我试图了解哪个类正在使用大量内存并且可能没有释放它。
我正在使用 VisualVM,在内存采样器中,我可以看到大部分内存都花在了字符、字符串和字节上,我的所有类都使用字符串,但是正如您所知,VisualVM 显示系统中的所有字符和字符串(所有字符与字符串相同,这使得很难理解谁持有它们),因为我知道持有这些字符串的其他类的大小是在没有字符串的情况下计算的。
我如何在这个工具中看到谁是“真正的”最大的类——那些拥有所有这些字符串的类?(最好是如果我可以从这些类中获取它们的字符串,而不是相反)我尝试在 heapDump 中使用“到最近的 GC 的根”,但是大约有 4,000,000 个字符串,所以我有机会找到“有问题的”那些非常小...
谢谢!!!