请参阅以下python代码:
signal.pthread_sigmask(signal.SIG_BLOCK, range(1, signal.NSIG)) #block signals
time.sleep(60) #waiting 60 seconds
pending = signal.sigpending() #check how much signals in pending state
当应用程序处于休眠状态时,我发送了五个SIGUSR1信号,但是我在待处理时只收到一个SIGUSR1信号。
我可以收到所有发送的SIGUSR1信号吗?
答案 0 :(得分:2)
在Python中通过信号模块不排队一个类型信号的多个实例。当您的应用程序处于睡眠状态时,您将收到所有已发送的信号,但在此之后您只能检测到一个最新信号。