1s延迟传递os信号(在python线程之间)?

时间:2015-02-05 13:15:34

标签: python linux multithreading debian signals

当我向python中的线程发送信号时,我遇到了1秒的信号传递延迟。

发送线程片段(导入信号和操作系统(以及时间)):

print "Signal sent at:", time.time()
os.kill(other_thread_id, signal.SIGALRM)

接收线程片段:

def receive_alarm(signum, stack):
    print "Signal received at:", time.time()
signal.signal(signal.SIGALRM, receive_alarm)

同时运行两者:

Signal sent at 1423141616.02
Signal received at: 1423141617.02

因此发出警报信号需要一整秒钟。它总是1秒钟。这种延迟使我无法使用它。有谁知道更多关于这个?这是某个地方吗?或者我做错了什么?我也尝试了其他信号。

操作系统:Debian 7

提前感谢您的帮助!

约翰

在以下评论后更新:

strace python main.py

不要给这个延迟。

python main.py

DOES :-)。这可能让我们更接近错误。

  • Ĵ

0 个答案:

没有答案