몇 시간 동안 실행하는 간단한 테스트 프로그램을 사용하고 있습니다.힙이 안정적 일 때 Java에서 RSS 유출을 진단하십시오.
public static void main(String[] args) {
for (int i=1; i<500; i++) {
run();
}
}
public static void run() {
new Thread(new Runnable() {
@Override
public void run() {
while (true) {
new String("Hello World");
}
}
}).start();
}
PS 또는 pmap을 통해 프로세스를 모니터링하면 jvisualvm이 힙을 안정적으로보고하는 동안 RSS 부분이 증가합니다.
모든 RSS anon 매핑을 요약하면 시간이 지남에 따라 증가하고 있습니다.
저는 Sun JDK 1.6.0_31과 함께 Centos 5.7 x64를 사용하고 있습니다.
시간이 지남에 따라 RSS가 증가해야합니까?
프로그램이 무한 루프를 실행하는 499 개의 스레드를 생성합니까? – ydroneaud
안녕하세요, RSS가 무엇을 의미하는지 모르지만이 새 문자열 ("Hello World")을 변경해보십시오. 이 "Hello World"에; 메모리 누출이 없을 때마다 새 문자열을 작성하게 만들지 마십시오. 어쨌든이 운동의 요점은 무엇입니까? –
@yael : RSS는 상주 세트 크기를 나타냅니다. http://en.wikipedia.org/wiki/Resident_set_size – tr9sh