|
|
Paraslash Audio Streaming |
| About News Download Documentation Development |
Signal handling functions.
Functions | |
| int | signal_init (void) |
| void | para_sigaction (int sig, void(*handler)(int)) |
| void | para_install_sighandler (int sig) |
| void | para_block_signal (int sig) |
| void | para_unblock_signal (int sig) |
| int | para_next_signal (void) |
| int signal_init | ( | void | ) |
Initialize the paraslash signal subsystem.
This function creates the signal pipe to deliver pending signals to the application (Bernstein's trick). It is usually called at startup, followed by subsequent calls to para_install_sighandler() for each signal that should be caught.
The same generic signal handler is installed for all signals. When a signal arrives, the handler writes the signal number to the write end of the pipe. By checking the read end the application can tell which signal, if any, has arrived.
| void para_sigaction | ( | int | sig, |
| void(*)(int) | handler | ||
| ) |
Install the given handler for the given signal.
| sig | The number of the signal to catch. |
| handler | to be installed, SIG_IGN, or SIG_DFL. |
This either succeeds or calls exit(EXIT_FAILURE).
Referenced by para_install_sighandler().
| void para_install_sighandler | ( | int | sig | ) |
Install the generic signal handler for the given signal number.
| sig | The number of the signal to catch. |
| void para_block_signal | ( | int | sig | ) |
Block a signal for the caller.
| sig | The signal to block. |
This sets the given signal in the current signal mask of the calling process to prevent this signal from delivery.
| void para_unblock_signal | ( | int | sig | ) |
Unblock a signal.
| sig | The signal to unblock. |
This function removes the given signal from the current set of blocked signals.
| int para_next_signal | ( | void | ) |
Return the number of the next pending signal.