Can Unix sleep in terms of mili/micro?
Walter Rowe
rowe at cme.nist.gov
Fri Sep 14 23:18:12 AEST 1990
To quote a SunOS man page:
======================================================================
NAME
usleep - suspend execution for interval in microseconds
SYNOPSIS
usleep(useconds)
unsigned useconds;
DESCRIPTION
Suspend the current process for the number of microseconds
specified by the argument. The actual suspension time may
be an arbitrary amount longer because of other activity in
the system, or because of the time spent in processing the
call.
The routine is implemented by setting an interval timer and
pausing until it occurs. The previous state of this timer
is saved and restored. If the sleep time exceeds the time
to the expiration of the previous timer, the process sleeps
only until the signal would have occurred, and the signal is
sent a short time later.
This routine is implemented using setitimer() (see getiti-
mer(2)); it requires eight system calls each time it is
invoked. A similar but less compatible function can be
obtained with a single select(2); it would not restart after
signals, but would not interfere with other uses of setiti-
mer.
SEE ALSO
getitimer(2), sigpause(2V), alarm(3V), sleep(3V), ualarm(3)
======================================================================
wpr
---
Walter P. Rowe ARPA: rowe at cme.nist.gov
System Administrator, Robot Systems Division UUCP: uunet!cme-durer!rowe
National Institute of Standards and Technology LIVE: (301) 975-3694
More information about the Comp.unix.internals
mailing list