| SLEEP(3) | SLEEP(3)

NAME

| sleep, alarm – delay, ask for delayed note

SYNOPSIS

`#include <u.h>
#include <libc.h>

` `int sleep(long millisecs)

` `long alarm(unsigned long millisecs)
`

DESCRIPTION

Sleep suspends the current process for the number of milliseconds specified by the argument. The actual suspension time may be a little more or less than the requested time. If millisecs is 0, the process gives up the CPU if another process is waiting to run, returning immediately if not. Sleep returns –1 if interrupted, 0 otherwise.

Alarm causes an `alarm` note (see notify(3)) to be sent to the invoking process after the number of milliseconds given by the argument. Successive calls to alarm reset the alarm clock. A zero argument clears the alarm. The return value is the amount of time previously remaining in the alarm clock.

SOURCE

| `/usr/local/plan9/src/lib9/sleep.c`

SEE ALSO

| intro(3)

DIAGNOSTICS

| These functions set errstr.

BUGS

| To avoid name conflicts with the underlying system, sleep and alarm are preprocessor macros defined as p9sleep and p9alarm; see intro(3).