Signal not delivered for a very long time (about 20 seconds)

The signal that the process sent to itself from the signal handler could not get it for about 20 seconds and then was delivered.

What could be the possible reasons?

I would like to know the possible reasons in general.

The actual code I am looking at is here

+3


source to share


1 answer


You are most likely calling a function from a signal handler that you shouldn't be calling from that signal handler.

See more details man 7 signal

:



Security Features Using Async

The signal handler function must be very careful, as processing elsewhere may be interrupted at some arbitrary point in program execution. POSIX has a "safe function" concept. If a signal interrupts the execution of an unsafe function, and the handler calls an unsafe function, then the program's behavior is undefined.

+2


source







All Articles