MAT、jmapなど、jvmメモリー使用量をオフラインで分析する方法はたくさんあります。しかし、ランタイム中にコード内のメモリ使用量を測定する方法はありますか?アドバイスをいただければ幸いです。Javaコード内のjvmメモリー使用量に関する情報を取得
答えて
例えばhttps://docs.oracle.com/javase/8/docs/api/java/lang/Runtime.html
すなわち、公式のJavaドキュメントを参照してください:
Runtime.getRuntime().totalMemory() // total memory available
Runtime.getRuntime().freeMemory() // free memory
hereは
コメントの中のOPの明確化に基づいて、私はこれらのツールが実際に彼らのニーズに対処するとは思わない。 – templatetypedef
何かアドバイスがされる役に立つかもしれ品ですとても有難い。
あなたがアドバイスを求めているので....私のアドバイスは次のようになります - 開発時間でオプションを模索以外の何のためにこれを実行しようとしないでください。
オブジェクトサイズを推定し、この情報を使用して動作を調整するプログラムを作成しようとすると、さまざまなパフォーマンスの問題に遭遇する可能性が高く、回避方法を考え出すのに多くの時間を費やします。そして、あなたのアプリケーションはずっと複雑で、維持するのは難しいでしょう。
もう1つのアドバイス:メモリ内にどれくらいのスペースオブジェクトが占有されているかに執着しないでください。あなたが実際に大きなデータ構造を持っていたり、あなたのプラットフォーム上のメモリが非常に少ない場合を除いて、ここにいくつかのバイトをセーブすることはほとんど違いがありません。
このQ & Aはかなりよくトピックをカバーして、と言った:
実際に私は、メモリしきい値制御ポリシーでサービスを実装したいと思います。 2つのメモリを消費するスレッドが実行されていることが分かっている場合は、OOMを発生させる前に終了することができます。 –
私はそれがうまくいくとは思っていません。 IMOでは、別のJVMでコードを実行するほうがよいでしょう。限定されたヒープサイズです。 –
vertica - HPのデータベースで、機能コールリソースプールがあり、クエリに使用できるメモリ量を制御できます。しかし、私はそれがC++で書かれていると思います。 –
- 1. アンドロイドアプリの使用に関するデータ/情報を取得する
- 2. リモートマシンのシステム情報を取得する(Javaを使用)
- 3. アセンブリに関する情報を取得
- 4. C#:ドメイン内のコンピュータに関する情報を取得
- 5. jqueryで使用するphp関数情報を取得する
- 6. コード内の関数継続時間情報を取得する方法は?
- 7. Javaを使用したスタックオーバーフローAPIからの情報の取得
- 8. Java EE/JPAを使用したデータベースメタ情報の取得
- 9. Qtのコード行に関する情報を取得するには?
- 10. 容量情報を取得するためのacess tfs
- 11. jQueryを使用してイベントのソースに関する情報を取得
- 12. ブラックベリーのNeighboringCell情報(ネットワーク情報に関連する情報)を取得する方法
- 13. gdbとpthreadsを使用してスレッドに関するプログラム情報を取得
- 14. scapyを使用してlayer2接続に関する情報を取得
- 15. maven依存関係に関する集約情報を取得
- 16. テーブル値関数に関する情報を取得
- 17. GitHub Java APIを使用してログインしているユーザーに関する情報を取得しますか?
- 18. JavaでREST APIを使用して集計でクローズドプロジェクトに関する情報を取得する方法
- 19. PHPのパフォーマンス:メモリーを大量に使用する変数
- 20. Capistranoのタスクに関する詳細情報を取得する
- 21. JavaScriptのハイパーリンクに関する情報を取得する
- 22. 特定のオブジェクトに関する情報を取得する
- 23. 私のユーザーに関する情報を取得する
- 24. AJAXを使用してリモートファイル情報を取得するには?
- 25. 取得情報
- 26. Pythonを使用してWindowsシステムの内部情報を取得する
- 27. 配列内の患者に関する情報を取得したい
- 28. JAVAを使用してLDAPからユーザー情報を取得する
- 29. すべてのヨーロッパ諸国に関する情報を取得
- 30. JavaからJavaへのバイトコードコンパイラ:Javaクラスライブラリの情報を取得するには?
分析のどのようなあなたは、実行中に興味がありますか?また、どのJVMを使用していますか? – templatetypedef
たとえば、ある時点で、jmapメモリの中のオブジェクトjap -heap pidのようなオブジェクトの数を知りたいと思います。 –
特にこの情報で何をしたいですか? – templatetypedef