explain_nanosleep_or_die3
High‐resolution sleep and report errors
Usage
#include <libexplain/nanosleep.h>
void explain_nanosleep_or_die(const struct timespec *req, struct timespec *rem);
int explain_nanosleep_on_error(const struct timespec *req, struct timespec *rem);
Overview
The explain_nanosleep_or_die function is used to call the nanosleep(2) system call. On failure an explanation will be printed to stderr, obtained from the explain_nanosleep(3) function, and then the process terminates by calling exit(EXIT_FAILURE).
The explain_nanosleep_on_error function is used to call the nanosleep(2) system call. On failure an explanation will be printed to stderr, obtained from the explain_nanosleep(3) function, but still returns to the caller.
req
|
The req, exactly as to be passed to the nanosleep(2) system call. |
|---|---|
rem
|
The rem, exactly as to be passed to the nanosleep(2) system call. |
Return value
The explain_nanosleep_or_die function only returns on success, see nanosleep(2) for more information. On failure, prints an explanation and exits, it does not return.
The explain_nanosleep_on_error function always returns the value return by the wrapped nanosleep(2) system call.
Examples
The explain_nanosleep_or_die function is intended to be used in a fashion similar to the following example:
explain_nanosleep_or_die(req, rem);
Releases
Unchanged in 5 releases since Debian 9 (Stretch).