gpt4 book ai didi

Python 错误代码

转载 作者:太空狗 更新时间:2023-10-30 02:06:26 26 4
gpt4 key购买 nike

我有一个 python 脚本,它使用 subprocess.Popen 来运行另一个 python 脚本的多个实例,每个实例都在不同的文件上运行。

我收集了 300 个文件,我出于测试目的运行了这个过程。每次运行,随机数量的文件失败,总是不同的文件,所以文件本身没有问题,但子进程退出时出现错误代码 -6 或 -11。如果我使用相同的输入文件再次运行该脚本,它将成功运行。

什么是 -6 和 -11?它们可以与 python 异常相关联吗?

编辑澄清:脚本实际上是 django 管理命令。我有一个很大的 try:except 子句,它捕获任何异常并调用 sys.exit(1),所以失败发生在我的代码之外。可能在加载其他模块。我检查了 django 源代码,它似乎总是在出现任何错误时调用 sys.exit(1),因此 -6 和 -11 似乎来自较低级别。我认为它们可能是与竞争条件相关的错误,但我不能确定这一点。

最佳答案

您是否从 mysubproc.returncode 获取退出状态?

来自 http://docs.python.org/library/subprocess.html#subprocess.Popen.returncode :

A negative value -N indicates that the child was terminated by signal N (Unix only).

信号 6 和 11 是 SIGABRT(中止)和 SIGSEGV(段错误)(http://linux.die.net/man/7/signal)。我的猜测是那些其他脚本因扩展或扩展所依赖的库之一而陷入困境。那么您的构建可能很糟糕 - 如果您手动重新编译,或者查看是否有更新的包。

关于Python 错误代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3630389/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com