中断Python程序在DLL中死锁

时间:2009-08-11 13:12:49

标签: python dll

如果在DLL中的代码死锁时,如何确保python程序可以通过Ctrl-C或类似机制中断?

2 个答案:

答案 0 :(得分:1)

不确定这是否正是您所要求的,但在尝试中断(通过Ctrl-C)多线程python进程时会出现问题。这是一个关于python Global Interpreter Lock的讨论视频,该视频还讨论了这个问题:

Mindblowing Python GIL

答案 1 :(得分:0)

您可能需要查看this mailing list以获取其他一些建议,但没有任何确凿的答案。

我多次遇到过这个问题,至少可以确认在Haskell中使用FFI时会发生这种情况。我本来可以发誓,我曾经在Haskell的FFI文档中看到过一些内容,提到DLL不会从ctrl-c信号返回,但我找不到该文档的运气。

你可以尝试using ctrl-break,但是这并不能解决Haskell中的DLL问题,而且我怀疑它是否适用于Python。

<小时/> 更新:在无限循环中调用DLL函数期间,当ctrl-c没有时,ctrl-break在Python中对我有用。