我在读Linux系统编程。在
在介绍system(command)
函数时,本书指出在command
的执行过程中,SIGINT
被忽略。在
因此,假设os.system
只是底层系统函数的包装器,我尝试以下操作:
在循环.py在
while True:
print 'You should not be able to CTRL+C me ;p'
试验_循环.py在
^{pr2}$现在我用system
执行loop.py
,我希望SIGINT被忽略,但是当我在运行的程序上使用CTRL+C时,它仍然会被杀死。在
你知道为什么os.system
与system()
函数不同吗?在
调用}的执行。因此,如果在调用
system
的应用程序将忽略SIGINT
(只要system
正在执行)。它不会被system
生成的应用程序忽略。因此,如果按CTRL+c,将中止loop.py
的执行,但不会中止{system
之后添加一些代码,您将看到这些代码将在按CTRL+c之后执行相关问题 更多 >
编程相关推荐