sigio и *Sig

1 min read
Точнее, аж целых две глобальные переменные, использующих лексему “Sig” - сокращение от “сигнал”.
*Sig1, *Sig2 - глобальные переменные, содержащие (возможно, пустые) тела prg
, которые будут выполнены при отправке сигнала SIGUSR1 (или сигнала SIGUSR2 соответственно) текущему процессу.
: (de *Sig1 (msg 'SIGUSR1))
-> *Sig1
# First session
: (sigio (setq *SigSock (port T 4444)) # Register signal handler at UDP port
(while (udp *SigSock) # Queue all received data
(fifo '*SigQueue @) ) )
-> 3
# Second session
: (for I 7 (udp "localhost" 4444 I)) # Send numbers to first session
# First session
: (fifo '*SigQueue)
-> 1
: (fifo '*SigQueue)
-> 2
sigio - устанавливает обработчик сигнала prg
для SIGIO на файловом дескрипторе cnt
. Возвращает файловый дескриптор.
Tstp1 и *TStp2 -глобальные переменные, содержащие (возможно, пустые) тела prg
, которые будут выполнены при отправке сигнала SIGTSTP (*TStp1
) или сигнала SIGCONT (*TStp2
) текущему процессу.
0
Subscribe to my newsletter
Read articles from Sergey Shishkin directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by

Sergey Shishkin
Sergey Shishkin
Всегда чему-то учусь!