private long guessArraySize(Object obj) { long size = PrimitiveType.getArraySize(); int length = Array.getLength(obj); if (length != 0) { Class<?> arrayElementClazz = obj.getClass().getComponentType(); if (arrayElementClazz.isPrimitive()) { size += length * PrimitiveType.forType(arrayElementClazz).getSize(); } else { size += length * PrimitiveType.getReferenceSize(); } } if ((size % CURRENT_JVM_INFORMATION.getObjectAlignment()) != 0) { size += CURRENT_JVM_INFORMATION.getObjectAlignment() - (size % CURRENT_JVM_INFORMATION.getObjectAlignment()); } return Math.max(size, CURRENT_JVM_INFORMATION.getMinimumObjectSize()); } }
private long guessArraySize(Object obj) { long size = PrimitiveType.getArraySize(); int length = Array.getLength(obj); if (length != 0) { Class<?> arrayElementClazz = obj.getClass().getComponentType(); if (arrayElementClazz.isPrimitive()) { size += length * PrimitiveType.forType(arrayElementClazz).getSize(); } else { size += length * PrimitiveType.getReferenceSize(); } } if ((size % CURRENT_JVM_INFORMATION.getObjectAlignment()) != 0) { size += CURRENT_JVM_INFORMATION.getObjectAlignment() - (size % CURRENT_JVM_INFORMATION.getObjectAlignment()); } return Math.max(size, CURRENT_JVM_INFORMATION.getMinimumObjectSize()); } }
private long guessArraySize(Object obj) { long size = PrimitiveType.getArraySize(); int length = Array.getLength(obj); if (length != 0) { Class<?> arrayElementClazz = obj.getClass().getComponentType(); if (arrayElementClazz.isPrimitive()) { size += length * PrimitiveType.forType(arrayElementClazz).getSize(); } else { size += length * PrimitiveType.getReferenceSize(); } } if ((size % CURRENT_JVM_INFORMATION.getObjectAlignment()) != 0) { size += CURRENT_JVM_INFORMATION.getObjectAlignment() - (size % CURRENT_JVM_INFORMATION.getObjectAlignment()); } return Math.max(size, CURRENT_JVM_INFORMATION.getMinimumObjectSize()); } }
private long guessArraySize(Object obj) { long size = PrimitiveType.getArraySize(); int length = Array.getLength(obj); if (length != 0) { Class<?> arrayElementClazz = obj.getClass().getComponentType(); if (arrayElementClazz.isPrimitive()) { size += length * PrimitiveType.forType(arrayElementClazz).getSize(); } else { size += length * PrimitiveType.getReferenceSize(); } } if ((size % CURRENT_JVM_INFORMATION.getObjectAlignment()) != 0) { size += CURRENT_JVM_INFORMATION.getObjectAlignment() - (size % CURRENT_JVM_INFORMATION.getObjectAlignment()); } return Math.max(size, CURRENT_JVM_INFORMATION.getMinimumObjectSize()); } }