QNX Developer Support
![]() |
![]() |
![]() |
![]() |
pause()
Suspend the calling thread until delivery of a signal
Synopsis:
#include <unistd.h> int pause( void );
Library:
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
Description:
The pause() function suspends the calling thread until delivery of a signal whose action is either to execute a signal handler or to terminate the process.
If the action is to terminate the process, pause() doesn't return. If the action is to execute a signal handler, pause() returns after the signal handler returns.
Returns:
On error, pause() returns -1 and sets errno to EINTR; otherwise, it never returns.
Examples:
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
int main( void )
{
/* set an alarm to go off in 5 seconds */
alarm( 5 );
/*
* Wait until we receive a SIGALRM signal. However,
* since we don't have a signal handler, any signal
* will kill us.
*/
printf( "Hang around, "
" waiting to die in 5 seconds\n" );
pause();
return EXIT_SUCCESS;
}
Classification:
| Safety: | |
|---|---|
| Cancellation point | Yes |
| Interrupt handler | No |
| Signal handler | Yes |
| Thread | Yes |
See also:
![]() |
![]() |
![]() |
![]() |

![[Previous]](../prev.gif)
![[Contents]](../contents.gif)
![[Index]](../keyword_index.gif)
![[Next]](../next.gif)
