随着时间的推移,我在应用程序中获得了成百上千个这样的process_reaper线程。有人知道这些可能是什么吗?它们似乎是在我的Runtime.exec()中使用的,但是我在finally语句中销毁了我的进程,但它们仍然会出现
屏幕截图: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();
}
}发布于 2010-10-01 10:47:52
我自己没有见过这个,所以我搜索了一下;似乎一个进程收割器与Linux内核进程管理有关,并且是一个守护线程。它维护进程状态,以便在进程终止时释放/释放/收集资源,等等。This资源可能会对您有所帮助。在最后的部分提到了收割者。
发布于 2014-01-20 15:12:48
您必须在exec之后和销毁之前调用process.waitFor() (asy操作)
https://stackoverflow.com/questions/3835830
复制相似问题