如何在Python中恢复分段错误?

2 投票
2 回答
1466 浏览
提问于 2025-04-17 08:29

我正在运行一个Python程序,这个程序会调用其他第三方模块,这些模块可能是用C语言写的。在这种情况下,我该如何从“段错误”中恢复过来,并继续在循环中处理其他事情呢?

段错误并不是一种可以捕获的异常,所以我们无法像处理其他错误那样处理它。而且我已经知道了段错误的根本原因,不需要再去追踪它了。(python tracing a segmentation fault)

2 个回答

2

段错误可能是你从Python程序调用的那个C模块里的一个bug。如果你拥有这段代码并且知道段错误的原因,最好是修复这个问题,而不是跳过当前的循环继续执行其他的,因为这个段错误可能会导致内存出问题,这样你可能得不到想要的结果。

4

在另一个进程中调用第三个模块,这样当出现段错误时,主进程就不会崩溃。

撰写回答