unix - SIGALRM blocked by a mask -
i have doubt happens when sigalrm signal gets blocked, go pending state , delivered after unblocked or lost?
the sigalrm held pending, , delivered unblocked.
a blocked signal (sig_block) remains pending until is:
- delivered, being unblocked , having either default (sig_dfl or "uncaught") disposition or user-supplied ("caught") disposition,
struct sigaction
'ssa_handler
. - accepted,
sigwait
,sigwaitinfo
, orsigtimedwait
, meaning removed set of pending signals without further action - discarded, changing disposition sig_ign ("ignored"). ignored signals will not held pending in case
conventional unix signals typically not queue, 1 signal of given type may pending @ time, , subsequently generated signals of same type lost.
(as aside, implementation chooses order of signal delivery , acceptance, example, delivering or accepting lower-numbered signals before higher-numbered signals. means newly unblocked sigalrm might not delivered first if other signals ready delivery. in practice, however, delivered immediately.)
Comments
Post a Comment