我正在开发一个PyQt应用程序,因此很可能会发生段错误。
我想使用faulthandler模块来捕捉这些。现在不是写给stderr而是想做以下事情:
现在这个工作正常,除非我运行我的应用程序的多个实例。
然后我想我可以写入一个具有已知位置的随机文件(比如crash-XXXXX.log
),然后在开始检查crash-*.log
时,如果它是非空的那么做同样的事情上方。
然而,当这样做时,至少在Linux上我将能够删除该文件,而另一个实例可能仍然打开它,然后如果该实例崩溃,则日志会丢失。
我也不能在正确的时间open()
文件,因为faulthandler想要一个打开的文件。
我正在寻找一个解决方案:
我考虑过一些不同的方法,但它们都有这些缺点之一。