我有一个由C ++编写的服务器应用程序。我发现这个应用程序是否通过python代码启动:
import os
os.system('./server&')
它无法与信号SIGPIPE作出反应。命令
kill -s 13 pid
什么都不做(C ++服务器没有省略SIGPIPE,所以在kill之后,进程应该退出)。但是,如果我只是通过命令启动服务器:
./server&
它可以与SIGPIPE(退出)
作出反应我测试了其他信号,SIGKILL,SIGTERM,SIGSEGV,SIGINT都可以工作。只有SIGPIPE才能做到。 为什么? python或linux做什么?
Linux:Ubuntu 16.04 Python:2.7.12