問題タブ [heap-dump]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - コンソールで実行されていない Windows 上の Java プロセスのスレッドとヒープ ダンプを取得する方法
別の Java プロセスを実行するコンソールから実行する Java アプリケーションがあります。その子プロセスのスレッド/ヒープ ダンプを取得したい。
Unixではできましたkill -3 <pid>
が、Windowsの知る限り、スレッドダンプを取得する唯一の方法はコンソールでCtrl-Breakです。しかし、それは子プロセスではなく、親プロセスのダンプのみを提供します。
そのヒープダンプを取得する別の方法はありますか?
java - Websphere での javacore、スレッド ダンプ、ヒープ ダンプの違い
javacore、スレッドダンプ、ヒープダンプの正確な違いを教えてもらえますか? これらはそれぞれどのような状況で使用されますか??
java - VM がクラッシュした後に Java ヒープ ダンプの作成を無効にする方法は?
JVM は 18Gb メモリの FreeBSD 上で動作します。コア ファイルの作成には約 1 時間かかりますが、これは非常に遅いため、何らかの方法で無効にする必要があります。
java - jconsole使用時のJavaダンプヒープファイルの場所は?
まあ、これは恥ずかしいです ...
Windows ボックスでの Java メモリ リークを探すために、Eclipse メモリ アナライザーをいじり始めています。ステップ 1 は、ヒープ ダンプ ファイルを取得することです。これを行うには、Eclipse 内から Java (javaw.exe) プロセスを開始し、jconsole で接続します。次に、jconsole MBeans タブで、dumpHeap ボタンをクリックします。初めてこれを行ったとき、ヒープ ダンプ ファイルが作成されたというポップアップが表示されましたが、その名前や場所は示されていませんでした。別の javaw.exe プロセスに接続しているときに再度 dumpHeap を実行すると、jconsole は次のように言います。
もちろん、その名前やパスは指定しません。それはどこでしょうか?
「hprof」、「java_pid」、または「heapdump」を含むファイルを C: ドライブ (cygwin コマンド ライン ツールを使用) で検索しましたが、妥当なものは見つかりませんでした。Windows 検索を使用して、前日に変更された Eclipse ワークスペース内のすべてのファイルを探しました。
Sun Java 1.6 JVM を使用していますが、-XX:HeapDumpPath が設定されていません。
更新 (2010 年 4 月 28 日):元のヒープ ファイルの場所は、ヒープ ダンプをトリガーしたツールである jconsole によって決定されたに違いありません。JVM のヒープ ダンプの場所は、JVM がトリガーするヒープ ダンプ (たとえば、OutOfMemoryException) にのみ適用する必要があります。
jvisualvm を使用するという Matt B の提案は、古い jconsole のはるかに便利な代替手段を教えてくれ、私の問題をうまく解決してくれます。どのタイプのオブジェクトが最も多く、最も多くのメモリを保持しているかを示す優れたメモリ プロファイラがあります。また、時間の経過に伴う実際のメモリ使用量を示すモニターがあります。ヒープダンプを要求すると、ファイル名も教えてくれます! Eclipse Memory Analyzer は、完全な詳細を提供します。
java - Javaアプリケーションの本番環境の問題をデバッグするために使用できるツール
Javaアプリケーションの本番環境の問題をデバッグするためのさまざまなツールとテクニックは何でしょうか。好き、
- スレッドダンプを取得する方法とツールは何ですか?
- ヒープダンプを取得する方法とツールは何ですか?
- 上記のダンプを分析するためのツールは何ですか?
(すべてLinux / Unix環境にあると仮定します)
android - Android ==> メモリ分析 ==> Eclipse メモリ アナライザー?
アプリケーションのメモリ リークをチェックする必要があります。また、アプリケーションのメモリ割り当ても確認する必要があります。Eclipse メモリー・アナライザーをダウンロードしてインストールしましたが、最初のステップはヒープ・ダンプを開くことのようです。しかし、ヒープ ダンプとは何ですか。どうすればヒープ ダンプを作成できますか。そして、このソフトウェアをどのように使用するのでしょうか。グーグルで調べましたが、有用な情報が見つかりませんでした。
java - ヒープダンプで同じ値を持つオブジェクトを見つける
メモリ内のオブジェクトの数を減らしたい。同じ値を持つオブジェクトが多数存在する場合があります。ヒープダンプで同じ値を持つすべてのオブジェクトを見つける方法はありますか?
java - Java プロセスでヒープをダンプできません
デバッグしたい Java プロセスがあります。問題は、開いている接続が多すぎるため、プロセスに接続できないために jmap の実行が失敗することです。jmap -F を実行すると、次のエラーが発生します。
何が問題になる可能性がありますか? プロセスを再起動せずに解決できますか(再起動するとバグが消える可能性があるため、回避したい)。
eclipse - Eclipse のメモリ割り当ての問題
Eclipse の標準よりも大きなヒープを必要とする ~800mb のヒープ ダンプを分析しようとしています。ただし、eclipse.ini ファイルに移動して-Xmx2g
(または-Xmx2048m
) を設定すると、「Java 仮想マシンの作成に失敗しました」というエラーが表示されます。
1) はい、十分なメモリがあります。2) 正確に -Xmx976m まで変更できます。3) スタンドアロンの MAT アナライザーを試してみましたが、-Xmx1024m で動作します。4) いいえ、ヒープを分析するには 1 GB では不十分です。OOM が発生します。
これは日食エラーです:
これは MAT エラーです。
(それらは同じだと思います。これは、MAT の例を見ることができるようにするためです)
私の現在のeclipse.ini(作業中)は次のとおりです。
誰かがこれを理解していますか?
ありがとう!
f.
hibernate - Hibernate: OOM 例外、IdentityMap の問題?
多くのオブジェクトをロードすると、OOM-Exception が発生します。プロファイラーでヒープを分析した後、何千ものエントリを含む LinkedHashMap を参照する org/hibernate/util/IdentityMap に大量のメモリがあることがわかりました。これらのオブジェクトは何に使用されますか?
いろいろな情報本当にありがとうございます…