私はheapdumpファイルでStringクラスがメモリを使い果たしているのを見ることができますが、その文字列が何であるかを具体的にどのように知っていますか?メモリリークの原因となるJava文字列を特定する方法を具体的に調べるにはどうすればよいですか?
0
A
答えて
3
VisualVM
を使用する場合は、OQL
という2つのクエリを使用して、探しているJavaヒープのデータを読み取ることができます。あなたのニーズに合わせて一つのコマンドは次のとおりです。
select {instance: s, content: s.toString()} from java.lang.String s
where /java/(s.toString())
あなたはもっとここにたくさん見つけることができます:https://visualvm.java.net/oqlhelp.html
0
を私は小さな春のブートアプリケーションとEclipse Memory Analyzerでこれをシミュレートしました。ヒープダンプはMAT内部から作成されましたが、既に作成したヒープダンプを開くこともできます。
あなたはヒープダンプMATを開くと自動的にあなたに多くのメモリを使用している容疑者を示しています。あなたは黄色でマーク(String
インスタンスとその値を見ることができます詳細を開くと
を呼ばれるセクションで私のスクリーンショット)でAccumulated Objects in Dominator Tree
ショートノート:あなたはあまりにもMAT内からOQLを実行することができます:
関連する問題
- 1. Pythonで文字列の両端を具体的に調べるにはどうすればよいですか?
- 2. IE10でAppCacheの致命的なエラーの原因を調べるにはどうすればよいですか?
- 3. このメモリリークの原因を特定するにはどうすればよいですか?
- 4. フラグメントの原因となるアクティビティを特定するにはどうすればよいですか?
- 5. 共用体エラーの原因となる列を特定する方法
- 6. Java文字列の部分文字列が正規表現と一致するかどうかを調べるにはどうすればよいですか?
- 7. ブラウザのコンソールログからエラーの原因を調べるにはどうすればよいですか?
- 8. SimpleDateFormatで解析例外の実際の原因を調べるにはどうすればよいですか?
- 9. 文字列に特定のURLが含まれているかどうかをPHPで調べるにはどうすればよいですか?
- 10. Sublime Textのバグの原因を調べるにはどうすればよいですか?
- 11. IOSデバイスのエラークラッシュレポートの原因を調べるにはどうすればよいですか?
- 12. PTEの枯渇の原因を調べるにはどうすればよいですか?
- 13. アプリケーションのクラッシュの原因を調べるにはどうすればよいですか?
- 14. 動的テキストの部分文字列の数を調べるにはどうすればよいですか?
- 15. Javaの文字列から特定の文字を除くすべての文字を削除するにはどうすればよいですか?
- 16. 文字列内の特定の文字列を削除するにはどうすればよいですか?
- 17. 特定のデータを調べるにはどうすればいいですか
- 18. 私のエラーの原因を調べるにはどうすればいいですか?
- 19. NetBeansでどのようにメモリリークを調べるにはどうすればいいですか?
- 20. iOS Safariで「Styles Invalidated」の原因を特定するにはどうすればよいですか?
- 21. テキストの文字列に特定の文字が含まれているかどうかを調べる
- 22. PHP:配列に文字列を含む文字列があるかどうかを調べるにはどうすればよいですか?
- 23. Node.jsのUnhandledPromiseRejectionWarningの原因を特定するにはどうすればよいですか?
- 24. 特定の文字の後に文字列を切り取るにはどうすればよいですか?
- 25. Javaの文字列に特殊文字があるかどうかを調べるには
- 26. Erlangでランタイムエラーが発生した原因を特定するにはどうすればよいですか?
- 27. QString内の特定の文字が文字か句読点かどうかを調べるにはどうすればよいですか?
- 28. javaで特定の特殊文字を削除するにはどうすればよいですか?
- 29. 文字列にすべての数字が含まれているかどうかを調べる方法
- 30. 動的にロードされたライブラリがメモリリークを引き起こす原因を特定する方法
これは役に立ちます!ダンベルの質問をすることはできますか?このクエリはどこで実行しますか? JVisualVmなどのコンソールが組み込まれていますか? –
@OneTwoThree:コマンドラインツールとビジュアルツールの両方があります。ウェブサイトで完全なドキュメントを見ることができます。それは非常に便利なツールです – Pooya