반응형
일반적인 map.size() 말고 실제 메모리에 올라가는 map byte사이즈를 알고 싶은경우~
다음과 같이 사용하면 될듯
public static void size(Map map) {
try {
System.out.println("Index Size: " + map.size());
ByteArrayOutputStream baos=new ByteArrayOutputStream();
ObjectOutputStream oos=new ObjectOutputStream(baos);
oos.writeObject(map);
oos.close();
System.out.println("Data Size: " + baos.size());
} catch(IOException e){
e.printStackTrace();
}
}
baos.size() 메소드를 들어가보면 다음과 같이 bytes를 리턴한다.
/**
* Returns the current size of the buffer.
*
* @return the value of the <code>count</code> field, which is the number
* of valid bytes in this output stream.
* @see java.io.ByteArrayOutputStream#count
*/
public synchronized int size() {
return count;
}
확인할일이 있어서 보다가 정리
반응형
'Programming > Java,Spring' 카테고리의 다른 글
[ Java ] 자바 HashMap, ArrayList contains메소드 성능 비교 (0) | 2018.11.28 |
---|---|
[ Spring ] 스프링에서 Zookeeper connect시 ClosedChannelException (0) | 2018.11.20 |
[ Java ] Stream + Set + flatMap (0) | 2018.10.29 |
[ Java8 ] Stream Collectors toMap 중복키처리하기(Duplicate Key error) (1) | 2018.08.09 |
[ SpringBoot] 스프링부트 순차적 방식과 비동기처리(asyn애노테이션), Completablefuture와 성능 비교 (0) | 2018.06.26 |