HPlogo HP-UX Reference > S

sleep(3C)

HP-UX 11i Version 2: December 2007 Update
» 

Technical documentation

 » 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 2^31.

Application Usage

If a SIGALRM is generated for a multithreaded process, it may not be delivered to a thread currently in sleep(). See sigwait(2) manpage for details. In a multithreaded process, the 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