6

JVMでオブジェクトのサイズを取得するのに問題があります。JDK 5は、関数Instrumentationを介して計算するためのインターフェースを提供しますpremain()が、その使用方法がわかりません。

誰か助けてもらえますか?

4

4 に答える 4

11

最も簡単で効率的な解決策は、非常に小さなサイズのライブラリを使用することです

<dependency>
    <groupId>com.carrotsearch</groupId>
    <artifactId>java-sizeof</artifactId>
    <version>0.0.3</version>
</dependency>

これを使用する必要がありますhttp://grepcode.com/file/repo1.maven.org/maven2/com.carrotsearch/java-sizeof/0.0.2/com/carrotsearch/sizeof/RamUsageEstimator.java?av=f

shadowSizeOf()メソッドまたはsizeOf()

これは、これまでにこのトピックで見つけた最も簡単で高速なソリューションです...

于 2012-07-30T10:16:35.707 に答える
1

役立つ可能性がある別のオープン ソース プロジェクトは、JVM エージェントも使用するJammです。

于 2012-07-30T10:37:46.357 に答える
0

ダスティン・マルクスの非常に優れた記事を紹介します。

http://java.dzone.com/articles/estimating-java-object-sizes

于 2012-07-30T09:50:37.173 に答える
0

簡単なメモリ測定を比較的単純な API にパッケージ化したMemoryMeasurer ライブラリを使用すると役立つ場合があります。(または、そのソース コードを見て、インストルメンテーションがどのように使用されているかを確認できます。)

于 2012-07-30T10:02:23.013 に答える