pause
The simple way to wait until a signal arrives is to call pause . Please read about its disadvantages, in the following section, before you use it.
pause function suspends program execution until a signal arrives whose action is either to execute a handler function, or to terminate the process.
If the signal causes a handler function to be executed, then pause returns. This is considered an unsuccessful return (since ``successful'' behavior would be to suspend the program forever), so the return value is -1 . Even if you specify that other primitives should resume when a system handler returns (see Interrupted Primitives), this has no effect on pause ; it always fails when a signal is handled.
The following errno error conditions are defined for this function:
EINTR
If the signal causes program termination, pause doesn't return (obviously).
The pause function is declared in `unistd.h'.