What happens if a process gets a signal after it was stopped by
I am trying to understand and get a good picture of how this is handled. Unfortunately, all I could find was a short description of the signal but no details of particular use-cases.
As of now, my understanding is that while
SIGSTOP is in effect:
SIGKILLwill kill the process immediately
- other signals will be gathered up, and on a
SIGCONT, the signals on hold will be unleashed on the process, as if all of them were sent at that moment
- while handling the bunched-up signals after a
SA_RESTART, etc. will be applied, as per normal
E.g., If there is a
SIGCONT sequence, the handling of
SIGHUP will be put on hold until after
SIGCONT is received.
I am not sure if that is correct.
I am still in the dark about these cases:
I am still confused about the order of the bunched-up signals.
SIGTERMbe handled in the order they are received, or in an arbitrary order?
What happens if the same signal is received multiple times while
SIGSTOPis in effect?
SIGSTOPinterrupt a running signal handler? If signals were waiting to be handled, are they preserved until after a
I have found some answers in the answers to these similar questions, but I am still unclear on the above things.