在我的应用程序中,os.system 用于执行另一个程序。
os.system('./appln')
有什么方法可以检测正在执行的程序中是否发生运行时错误[例如,像 SIGSEGV]?
在我的应用程序中,os.system 用于执行另一个程序。
os.system('./appln')
有什么方法可以检测正在执行的程序中是否发生运行时错误[例如,像 SIGSEGV]?
看看subprocess
模块而不是os.system
. 该subprocess
模块有多种方法来捕获返回码或在非零返回码上引发异常:http: //docs.python.org/library/subprocess.html#replacing-os-system
通过检查 os.system 调用的返回值,可以检测正在执行的程序中的运行时错误。这个问题详细介绍了 os.system 调用的各种返回值。
也就是说,最好遵循@tweet 的回答并使用 subprocess 模块来实现相同的目的。