시소당
1. GC가 비사용중인 메모리를 모두 수거 하지 않을 수도 있다네요..그래서 더이상 사용하지 않을 놈들은.
MyObject obj = new MyObject();
// 사용이 끝난후
obj = null; 다음과 같이 null 로 해주는것이 GC를 불러내는데 효과적이라네요.
흠 근데 이거 보단 4번이 낳을듯..
2. 메모리 사용량 측정java.lang.Runtime 클래스를 이용하면, 현재 사용중인 메모리를 알 수 있다네요.
Runtime.totalMemory(); 현재 총 사용할 수 있는 사이즈
Runtime.freeMemory(); 현재 남아있는 heap 사이즈위에서 밑에것을 빼면, 현재 사용한 메모리 양이겠죠..
3. 실행시 heap 용량 제한하기java –hotspot –ms32m –mx32m JavaClass
다음과 같이 실행하면. 처음부터 32m 의 메모리를 가지고 시작..
4. WeakReference 활용
WeakReference 로 Wrapping 된 객체는.
System.gc() 실행시 모두 삭제된다.
출 처 :
1,2,3
4 : http://dna.daum.net/technote/java/JavaReferenceObjects