public class ObjectSizeCalculator extends Object
| 构造器和说明 |
|---|
ObjectSizeCalculator(MemoryLayoutSpecification memoryLayoutSpecification)
Creates an object size calculator that can calculate object sizes for a given
memoryLayoutSpecification. |
| 限定符和类型 | 方法和说明 |
|---|---|
long |
calculateObjectSize(Object obj)
Given an object, returns the total allocated size, in bytes, of the object
and all other objects reachable from it.
|
static long |
getObjectSize(Object obj)
Given an object, returns the total allocated size, in bytes, of the object
and all other objects reachable from it.
|
public ObjectSizeCalculator(MemoryLayoutSpecification memoryLayoutSpecification)
memoryLayoutSpecification.memoryLayoutSpecification - a description of the JVM memory layout.public static long getObjectSize(Object obj) throws UnsupportedOperationException
UnsupportedOperationException;obj - the object; can be null. Passing in a Class object doesn't do
anything special, it measures the size of all objects
reachable through it (which will include its class loader, and by
extension, all other Class objects loaded by
the same loader, and all the parent class loaders). It doesn't provide the
size of the static fields in the JVM class that the Class object
represents.UnsupportedOperationException - if the current vm memory layout cannot be detected.public long calculateObjectSize(Object obj)
obj - the object; can be null. Passing in a Class object doesn't do
anything special, it measures the size of all objects
reachable through it (which will include its class loader, and by
extension, all other Class objects loaded by
the same loader, and all the parent class loaders). It doesn't provide the
size of the static fields in the JVM class that the Class object
represents.Copyright © 2020. All rights reserved.