Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
杀死C++;在python中使用ctrl+;C_Python_C++ - Fatal编程技术网

杀死C++;在python中使用ctrl+;C

杀死C++;在python中使用ctrl+;C,python,c++,Python,C++,我有一个使用python.h的c++程序的python包装器 在C++中,代码包含无限循环作为服务: for (;;) { ... } python包装器调用此服务并跳入此循环。当我调用ctrl+c时,程序无法终止。(看起来python程序被杀了,而c++程序没有被杀) 如何使用ctrl+c同时杀死python和c++程序?如果您有子进程的pid,可以使用os.kill(pid,sig)杀死它。 要在python退出时启动它,可以添加.atexit处理程序。如果python程序正在启动C+

我有一个使用python.h的c++程序的python包装器 在C++中,代码包含无限循环作为服务:

for (;;) {
  ...
}
python包装器调用此服务并跳入此循环。当我调用ctrl+c时,程序无法终止。(看起来python程序被杀了,而c++程序没有被杀)


如何使用ctrl+c同时杀死python和c++程序?

如果您有子进程的pid,可以使用os.kill(pid,sig)杀死它。
要在python退出时启动它,可以添加
.atexit
处理程序。

如果python程序正在启动C++服务,可以尝试中断python中的SIGTERM信号,然后优雅地退出C++进程。我不知道pid。所有的设置都是在python.h中完成的