Suspend a thread for a given length of time
#include <unistd.h> unsigned int sleep( unsigned int seconds );
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
The sleep() function suspends the calling thread until the number of realtime seconds specified by the seconds argument have elapsed, or the thread receives a signal whose action is either to terminate the process or to call a signal handler.
0 if the full time specified was completed; otherwise, the number of seconds unslept if interrupted by a signal.
/* * The following program sleeps for the * number of seconds specified in argv[1]. */ #include <stdlib.h> #include <unistd.h> int main( int argc, char **argv ) { unsigned seconds; seconds = (unsigned) strtol( argv[1], NULL, 0 ); sleep( seconds ); return EXIT_SUCCESS; }
Safety: | |
---|---|
Cancellation point | Yes |
Interrupt handler | No |
Signal handler | Yes |
Thread | Yes |