問題タブ [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 - JDKがインストールされていないJava 7トリガーヒープダンプ
JDK がインストールされていない Linux で実行されている Java 7 VM のヒープ ダンプをトリガーするにはどうすればよいですか?
以前のバージョンの Java では、-XX:+HeapDumpOnCtrlBreak
JVM オプションを設定してから、 を使用してヒープ ダンプをトリガーすることができましたkill -QUIT <pid>
。これを Java 7 で動作させることができませんでした。JVisualVM または jmap を取得するために JDK をインストールする必要なく、これに相当するものはありますか。
java - jboss インスタンスからの GC ログを解釈する
本番環境でメモリ リークが発生しており、私の GC ログは以下のとおりです。明らかに、それがどのように問題であるかがわかります。ただし、ヒープ ダンプを取得できません。これは、問題が発生していることが判明するまでに手遅れであり、ヒープ ダンプが失敗するためです (-F force オプションを使用しても)。だから、ヒープダンプを取ることができるように、いつダウンするかを知る方法を見つけようとしています。これらのログから、もうすぐダウンすることを示すものはありますか? ありがとう!
これが私の JVM オプションで、Java 1.6 を使用しています。これは、1 か月に約 1,500 万人の訪問者を獲得するトラフィックの多い e コマース サイト用です。考え?
garbage-collection - WebSphere でヒープ ダンプをトリガーしたときに発生する Systemic GC を無効にするにはどうすればよいですか?
ヒープ ダンプを生成するときに発生するシステム GC 中に収集されるオブジェクトをキャプチャしたいと考えています。そのシステム GC を無効にする方法はありますか?
android - AndroidのヒープダンプをEclipse形式に変換する方法
何週間も私を夢中にさせてきたメモリリークを分析しようとしていMAT
ますが、何が悪いのかを理解するのに役立つ日食ツールについて知りました。問題は、私が見つけたすべてのチュートリアルで、フォーマットを変換する必要があると言っていることですdalvikから HPROF
フォーマットへのファイルの、しかし私が見つけることができる単一のチュートリアルは実際にそれを行う方法を説明していません、代わりに私はこのような漠然としたものを手に入れます
これで、取得するファイルは「標準」のSun .hprof形式に準拠していませんが、Dalvik独自の形式で記述されているため、変換する必要があります。
hprof-conv heap-dump-tm-pid.hprof 4mat.hprof
それは実際にはどういう意味ですか?何をクリックしますか?どこに行けばいいの?私は完全に失われ、イライラしています。どんな助けでも大いに役立つでしょう、ありがとう。
java - 割り当て注釈付きヒープダンプ
割り当てサイトの注釈を使用して Java ヒープ ダンプを取得できる既存のツールはありますか? このようなヒープ ダンプを使用すると、クラス タイプごとの集計に加えて、ランタイム オブジェクトを割り当て場所 (大まかに言えば、オブジェクトを作成する新しいステートメント) ごとに集計できます。
この種のヒープ ダンプが利用可能であると仮定すると、リークのデバッグに役立つと思いますか?
java - スキャナー プログラム OutOfMemoryError & メモリ アナライザー (MAT) を使用した Java ヒープ ダンプ分析
この投稿に示されているように、ヒープ サイズを増やしてもヒープ領域が不足する Java アプレットのヒープ ダンプを分析しようとしています。アプレット: Java ヒープ領域
今日の朝、いくつかのヒープ ダンプを取り (はい、デジタル ダンプを取ることは可能です)、MAT と Visual VM 1.3.5 でそれらを分析しようとしています。リーク テストを実行した後、主要な容疑者は org.eclipse.jdt.internal.core.JavaModelManager と org.eclipse.jst.jee.archive.internal.ArchiveImpl でした。コードでこれらを使用したことはありません。
Visual Vm は、最大のスペースが Byte[]、Int[]、Char[]、java.lang.string、および short[] クラスによって占められていることを示しています。私は自分のプログラムでこれらをあまり使用していません。このダンプをどのように理解すればよいですか? また、次のステップは何ですか? 必要に応じて、ダンプのコピーを投稿できます。
更新: 私の場合、MAT はビジュアル VM よりも優れています。私は朝からダンプ(再び..デジタルダンプ)を取得し、両方のツールで分析しています。VVM は org.eclipse.jdt.internal.core.JavaModelManager と org.eclipse.jst.jee.archive.internal.ArchiveImpl をリークの疑いのあるレポートで容疑者として表示しますが、Eclipse メモリ アナライザー (MAT) は私の swing アプリケーションが作成していることを示します。フォルダ内の画像のサムネイル (各画像は約 100kb) であり、それらを JToggleButton として表示します。しかし、サムネイルが追加されると、JtoggleButton のサイズは 6MB になります。したがって、フォルダに 100 個の画像がある場合、画像のサムネイルは少なくとも 600MB になります。それに加えて、私はこのプログラムで他のことをする必要があります.MATは、この場合、ほとんどのヒープスペースを占有した正確なオブジェクトを特定するのに役立ちました.
ありがとうDJ。
scala - 実行中のプロセスでscalaリストの内容を取得しますか?
実行中の Scala プロセスがあり、そのプロセスで List の内容を取得したいと考えています。プロセスの PID と List[String] の名前がわかり、VisualVM でヒープ ダンプを取得しました。その特定のリストの実際の内容を見つけてどこかに保存する方法はありますか?
java - 5 億 (double) 値の Java データ構造?
32678 個の頂点を持つ完全なグラフのランダム エッジを生成しています。つまり、5 億 + 値です。
HashMap を使用して、エッジをキーとして使用し、ランダムなエッジの重みを値として使用しています。私は遭遇し続けます:
スレッド「メイン」の例外 java.lang.OutOfMemoryError: java.lang.StringBuilder.toString(StringBuilder.java:430) の Java ヒープ領域 pa1.Graph.(Graph.java:60) の pa1.Main.main(Main)ジャバ:19)
このグラフは、最小スパニング ツリーを構築するために使用されます。
より良いデータ構造またはアプローチに関するアイデアはありますか?
より多くのメモリを割り当てるためのオーバーライドがあることは知っていますが、そのまま機能するソリューションを好みます。
tomcat - 実行中のアプリケーションに接続されている JVM を特定する方法は?
特定の Java プロセスのヒープ ダンプを取得するワークフローを BMC Atrium Orchestrator で構築したいと考えています。私が従わなければならない流れは次のとおりです。 1. アプリケーション名を入力します。2. 入力したアプリケーションが使用している JVM を見つけます。3. その JVM で実行されているプロセスのヒープ ハンプを取得します。
ステップ 2 について何か助けを得ることができますか?つまり、実行中のアプリケーションで使用されている JVM を特定するにはどうすればよいですか?
前もって感謝します。
java - JMapダンプ形式の仕様
jmapヒープダンプ形式のオープン仕様はありますか?
手伝ってくれてありがとう!