boost/process.hpp提供了一种生成和管理进程的良好机制。
它提供了一个child.terminate((方法来将SIGKILL发送给子级。
如何将SIGINT或SIGTERM发送到子进程?
看起来你可以做到:
#include <boost/process/child.hpp>
pid_t pid = my_child.id ();
kill (pid, SIGINT);
文件指出id
是一个私人成员函数,但在实践中似乎不是。
还有:
native_handle_t native_handle() const;
但实际返回的内容并没有记录在案。在Windows上,它很可能是一个进程句柄,但在*nix上,当然没有这样的东西。
特德打败了我:(