2

boost/process.hpp提供了一个很好的机制来生成和管理进程。

它提供了一个 child.terminate() 方法来向孩子发送 SIGKILL。

我如何将 SIGINT 或 SIGTERM 发送到子进程?

4

1 回答 1

2

看起来你可以这样做:

#include <boost/process/child.hpp>

pid_t pid = my_child.id ();
kill (pid, SIGINT);

文档指出这是id一个私有成员函数,但实际上它似乎不是。

还有:

native_handle_t native_handle() const;

但是实际返回的内容没有记录。在 Windows 上它很可能是一个进程句柄,但在 *nix 上当然没有这样的东西。

...泰德打败了我:)

于 2022-03-02T15:33:47.093 回答