我正在寻找一个跨平台(各种各样的Unix,包括Linux)来查找和杀死我的程序产生的所有进程。对于Linux,我可以走到/ proc获取这些信息,我相信我可以找到类似于OS X和* BSD的东西。但我更愿意,如果有一个标准的库。
背景:我正在编写一个自定义作业计划,需要终止在给定时间内未完成的作业。简单地杀死(SIGTERM,然后是SIGKILL-如果formar没有被忽略),当作业没有产生任何其他进程或正确处理SIGTERM并负责清理时,子进程可以正常工作。但我不控制工作 - 我知道至少有一些写得不好。在后一种情况下,系统会留下一堆孤立的进程,这些进程会持续存在某些资源并导致各种问题。
任何指向库的指针或某些跨平台的方式都是受欢迎的。