delay()
Suspends a calling thread for a given length of time
Synopsis:
#include <unistd.h>
unsigned int delay( unsigned int duration );
Arguments:
- duration
- The number of milliseconds for which to suspend the calling thread from execution.
Library:
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
Description:
The delay() function suspends the calling thread for duration milliseconds.
The suspension time may be greater than the requested amount, due to
the nature of time measurement (see the
Tick, Tock: Understanding the Neutrino Microkernel's Concept of Time
chapter of the QNX Neutrino Programmer's Guide), or due to
the scheduling of other, higher-priority threads by the system.
Returns:
0 for success, or the number of unslept milliseconds if interrupted by a signal.
Errors:
If an error occurs, errno is set to:
- EAGAIN
- No timer resources were available to satisfy the request.
Examples:
#include <unistd.h>
#include <stdlib.h>
void play_sound( void )
{
…
}
void stop_sound( void )
{
…
}
int main( void )
{
play_sound();
delay( 500 ); /* delay for 1/2 second */
stop_sound();
return EXIT_SUCCESS;
}