如何在 Python 中发送和接收实时信号`sigqueue()`?
Posted
技术标签:
【中文标题】如何在 Python 中发送和接收实时信号`sigqueue()`?【英文标题】:How do I send and receive real-time signals `sigqueue()` in Python? 【发布时间】:2009-11-30 21:16:23 【问题描述】:Python 提供了signals
模块和os.kill
;它是否有sigqueue()
的设施(带有附加数据的实时信号)?有哪些替代方案?
【问题讨论】:
【参考方案1】:你可以用ctypes做到这一点
>>> from ctypes import *
>>> c = cdll.LoadLibrary("libc.so.6")
>>> c.sigqueue
<_FuncPtr object at 0xb7dbd77c>
>>> c.sigqueue(100, 10, 0)
-1
>>>
您必须查看如何在 ctypes 中建立联合,这是我以前从未做过的,但我认为是可能的。
【讨论】:
【参考方案2】:如果还没有人这样做,另一种选择是自己包装 C 库 - 应该非常快速且轻松。 Look here 了解更多详情。
【讨论】:
以上是关于如何在 Python 中发送和接收实时信号`sigqueue()`?的主要内容,如果未能解决你的问题,请参考以下文章