首页 > 解决方案 > 在 C++11 中,signal.h 标头没有终止功能

问题描述

我刚刚尝试在 C++11 模式下使用 Gnu g++ 编译我不久前编写的代码,以查看代码是否需要很快重新编写(出于同样的原因,我还计划在 C++17 模式下对其进行测试)。

我发现 kill() 函数导致编译器错误,并且似乎在 signal.h 标头中不再存在 kill 函数。

我只是查看了http://www.cplusplus.com/reference/csignal/作为参考,这似乎证实这不仅仅是 Gnu 特定的遗漏,而且似乎在标准中。

我在任何地方都找不到这种遗漏的理由,也找不到任何关于在没有它的情况下我应该如何管理流程的建议。谁能指出我正确的方向?

标签: c++c++11g++kill-process

解决方案


C++ 标准函数是raise.

kill是一个需要 POSIX 进程 id 的 POSIX 函数,pid_t在 C++ 标准中都不需要。


推荐阅读