HPlogo HP-UX Reference Volume 4 of 5 > s

sleep(3C)

» 

Technical documentation

Complete book in PDF

 » Table of Contents

 » Index

NAME

sleep() — suspend execution for interval

SYNOPSIS

#include <unistd.h>

unsigned int sleep(unsigned int seconds);

DESCRIPTION

sleep() suspends the current process from execution for the number of seconds specified by the argument.

Actual suspension time can be less than that requested for two reasons:

  • Scheduled wakeups occur at fixed 1-second intervals (on the second, according to an internal clock), and

  • Any caught signal terminates the sleep following execution of that signal's catching routine.

Suspension time can be an arbitrary amount longer than requested due to the scheduling of other activity in the system. The value returned by sleep() is the ``unslept'' amount (the requested time minus the time actually slept) in case the caller had an alarm set to go off earlier than the end of the requested sleep() time, or premature arousal due to another caught signal.

seconds must be less than 232.

APPLICATION USAGE

sleep() is thread-safe. It is not async-cancel-safe. A cancellation point may occur when a thread is executing sleep().

If a SIGALRM is generated for a multi-threaded process, it may not be delivered to a thread currently in sleep(). See sigwait(2) man page for details. In a multi-threaded process delivery of a SIGALRM to a thread in sleep() simply causes sleep() to return without invoking the SIGALRM handler.

STANDARDS CONFORMANCE

sleep(): AES, SVID2, SVID3, XPG2, XPG3, XPG4, FIPS 151-2, POSIX.1

© Hewlett-Packard Development Company, L.P.