我收到了數百個這樣的process_reaper線程,這些線程隨着時間的推移在我的應用程序中建立起來。任何人都知道這可能是什麼?他們似乎是在我使用的Runtime.exec(的),但是我毀了我的過程在最後聲明,但他們仍然顯示什麼是Java中的process_reaper線程?
屏幕截圖: http://www.dropmocks.com/mBxM5
Process proc = null;
String line;
try {
logger.info("Trying to execute command " + Arrays.asList(command).toString().replace(",", ""));
proc = Runtime.getRuntime().exec(command);
} catch (IOException e) {
logger.info("IOException while trying to execute " + command);
return false;
} finally {
if(proc != null) {
proc.destroy();
}
}
感謝您的鏈接調用process.waitFor(),讀現在,任何想法如何擺脫他們? – James 2010-10-01 03:09:06
從你的屏幕截圖看來,他們似乎被剝奪了。無論如何,它們是必需的,因爲您正在使用Runtime.exec()生成單獨的進程。我不太清楚如何擺脫它們,因爲我自己沒有看到它們:-) – 2010-10-01 03:15:10
AH!感謝Sagar,這讓我感覺很好,我關閉並重新啓動了可視VM並且線程消失了,所以是的,他們正在被清理。謝謝:) – James 2010-10-01 03:39:59