Пожалуйста, смотрите следующий питона код:
Как обрабатывать несколько одинаковых разблокированных сигналов в 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, которые были отправлены?
Большинство сигналов не помещают очередь в несколько экземпляров - они просто ожидают или нет. Если вам нужно ставить в очередь несколько экземпляров чего-то, вам потребуется более общее событие или рамки доставки сообщений. – twalberg
twalberg, спасибо! –