2016-03-31 6 views

答えて

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

これは役に立ちます!ダンベルの質問をすることはできますか?このクエリはどこで実行しますか? JVisualVmなどのコンソールが組み込まれていますか? –

+0

@OneTwoThree:コマンドラインツールとビジュアルツールの両方があります。ウェブサイトで完全なドキュメントを見ることができます。それは非常に便利なツールです – Pooya

0

を私は小さな春のブートアプリケーションとEclipse Memory Analyzerでこれをシミュレートしました。ヒープダンプはMAT内部から作成されましたが、既に作成したヒープダンプを開くこともできます。

あなたはヒープダンプMATを開くと自動的にあなたに多くのメモリを使用している容疑者を示しています。あなたは黄色でマーク(Stringインスタンスとその値を見ることができます詳細を開くと

enter image description here

を呼ばれるセクションで私のスクリーンショット)でAccumulated Objects in Dominator Tree

enter image description here

ショートノート:あなたはあまりにもMAT内からOQLを実行することができます:

enter image description here

関連する問題