Sun의 JDK 1.4.2_18에서 실행중인 응용 프로그램에서 메모리 누수를 디버깅하고 있습니다. 이 버전은 명령 줄 param -XX : + HeapDumpOnCtrlBreak를 지원하는 것으로 보입니다. + HeapDumpOnCtrlBreak는 JVM이 컨트롤 중단을 발견했을 때 힙을 덤프하게합니다. 어떻게 이것을 리눅스 박스의 백그라운드 프로세스로 보내겠습니까? kill 시그널은 이것이 작동해야하는 방식이지만, 적어도 우분투 박스에서는 Ctrl-Break가 아닌 것을보고하지 않습니다.실행중인 Linux 프로세스에 Ctrl-Break를 보내려면 어떻게해야합니까?
업데이트 : Sun JDK 1.4.2_18 (_14는이 방법으로 힙을 덤프하는 첫 번째 사용자)으로 Kill -3을 테스트 한 결과 작동했습니다. 힙 덤프 파일이 만들어졌으며 프로세스가 계속 실행 중입니다.
-XX : + HeapDumpOnCtrlBreak 옵션을 지원하는 jvm이있는 리눅스 박스가 없으므로 이것을 테스트 할 수 없습니다. 그것이 작동한다는 것을 보증 할 수 없다). – bm212
나는 "kill -3"보다 "kill -quit"제안을 많이 볼 것입니다. – ephemient
kill -QUIT라고 말하면서 편집했습니다. – bm212