8
JVMのメモリ使用量を読み取る予定の実行プログラムを作成しています。私は、実行中のJVMのメモリ統計情報を取得するには二つの方法に遭遇してきた - ランタイム& MemoryMXBeanではを、そのメソッドの間、以下の対応を:Javaでのメモリ統計の取得:ランタイムvs. MemoryMXBean
memoryMxBean.getHeapMemoryUsage().getUsed() <=> runtime.totalMemory() - runtime.freeMemory()
memoryMxBean.getHeapMemoryUsage().getCommitted() <=> runtime.totalMemory()
memoryMxBean.getHeapMemoryUsage().getMax() <=> runtime.maxMemory()
MemoryMXBeanではにより提供される追加の非ヒープメモリ使用状況の情報を除き、ランタイムよりも好きな理由があるのでしょうか?
はい。どちらの方法も、使用されたメモリとまったく同じ値を返します。 – huljas