usleep(3) - NetBSD Manual Pages

USLEEP(3)               NetBSD Library Functions Manual              USLEEP(3)


NAME
usleep -- suspend execution for interval of microseconds
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include <unistd.h> int usleep(useconds_t microseconds);
DESCRIPTION
This interface is obsoleted by nanosleep(2). The usleep() function suspends execution of the calling process until either the number of microseconds specified by microseconds have elapsed or a signal is delivered to the calling process and its action is to invoke a signal catching function or to terminate the process. The sus- pension time may be longer than requested due to the scheduling of other activity by the system.
RETURN VALUES
On successful completion, usleep() returns 0. Otherwise, it returns -1 and sets errno to indicate the error.
ERRORS
The usleep() function may fail if: [EINTR] usleep was interrupted by the delivery of a signal.
SEE ALSO
nanosleep(2), sleep(3)
STANDARDS
The usleep() function conforms to X/Open Portability Guide Issue 4, Version 2 (``XPG4.2''). It later appeared in the POSIX standard, but in IEEE Std 1003.1-2004 (``POSIX.1'') it was marked as legacy and the use of nanosleep(2) was recommended instead. The IEEE Std 1003.1-2008 (``POSIX.1'') revision removed usleep() from the specification.
HISTORY
The usleep() function appeared in 4.3BSD.
CAVEATS
In IEEE Std 1003.1-2004 (``POSIX.1''), usleep was limited to values of microseconds less than one million. Some implementations, including NetBSD before 10.1, fail immediately with EINVAL -- and don't sleep at all -- if microseconds is one million or greater. NetBSD 10.1 April 22, 2024 NetBSD 10.1

Powered by man-cgi (2024-08-26). Maintained for NetBSD by Kimmo Suominen. Based on man-cgi by Panagiotis Christias.