【问题标题】:Fetching Object Size using Instrumentation使用 Instrumentation 获取对象大小
【发布时间】:2010-03-12 06:03:01
【问题描述】:

我有一个由其他几个对象组合而成的对象。当我使用 Instrumentation 包中的 getObjectSize() 方法时,它是否还包括复合对象的大小?

【问题讨论】:

    标签: java instrumentation objectsize


    【解决方案1】:

    API doc 说:

    结果可能包括对象的部分或全部开销,因此可用于在实现内部进行比较,但不适用于实现之间的比较。估计值可能会在 JVM 的单次调用期间发生变化。

    【讨论】:

      【解决方案2】:

      没有。返回的大小反映了该对象的大小——它包括该对象持有的引用,但不包括被引用的对象的大小。 (而且,正如其他人所指出的,不能保证它实际上是正确的。)

      【讨论】:

        【解决方案3】:

        getObjectSize(Object obj) 返回指定对象 (obj) 消耗的存储空间...因此您将获得您指定的大小。

        【讨论】:

        • 不一定。它返回大小的近似值,这也取决于实现。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-10-09
        • 1970-01-01
        • 1970-01-01
        • 2020-05-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多