Open System Services System Calls Reference Manual (G06.29+, H06.08+, J06.03+)

System Functions (n - p) pthread_delay_np(2)
NAME
pthread_delay_np - Delays execution of a thread
LIBRARY
G-series native OSS processes: /G/system/sysnn/zsptsrl
32-bit H-series and J-series OSS processes that use the POSIX User Thread Model library:
/G/system/zdllnnn/zputdll
64-bit H-series and J-series OSS processes that use the POSIX User Thread Model library:
/G/system/zdllnnn/yputdll
H-series and J-series OSS processes that use the Standard POSIX Threads library:
/G/system/zdllnnn/zsptdll
SYNOPSIS
#include <pthread.h> | #include <spthread.h>
/* pthread.h is required to use POSIX User Thread Model library */
/* spthread.h is required to use Standard POSIX Threads library */
int pthread_delay_np(
const struct timespec *interval);
PARAMETERS
interval Specifies the number of seconds and nanoseconds to delay execution. The value
specified for each must be greater than or equal to 0 (zero).
DESCRIPTION
This function causes a thread to delay execution for a specific interval of time. This interval ends
at the current time plus the specified interval. The function does not return before the end of the
interval is reached, but it might return an arbitrary amount of time after the end of the interval is
reached, because of system load, thread priorities, and system timer granularity.
Specifying an interval of 0 (zero) seconds and 0 (zero) nanoseconds is allowed and can be used
to force the thread to give up the processor or to deliver a pending cancelation request.
The timespec structure contains the following two fields:
tv_sec Is an integral number of seconds.
tv_nsec Is an integral number of nanoseconds.
On systems running H06.21 or later H-series RVUs or J06.10 or later J-series RVUs, you can use
either the POSIX User Thread Model library or the Standard POSIX Threads library for threaded
applications.
To use this function in a threaded application that uses the POSIX User Thread Model library on
systems running H06.21 or later RVUs or J06.10 or later RVUs, you must perform all of the fol-
lowing tasks:
Include the pthread.h header file in the application.
Compile the application using the _PUT_MODEL_ feature test macro or equivalent
compiler command option.
Link the application to the zputdll library (/G/system/zdllnnn/zputdll).
On systems running H06.24 or later H-series RVUs or J06.13 or later J-series RVUs, you can use
the POSIX User Thread Model library with 32-bit or 64-bit threaded applications.
To use this function in a 32-bit threaded application that uses the POSIX User Thread Model
library on systems running H06.24 or later RVUs or J06.13 or later RVUs, perform the same
tasks (described above) used to enable the POSIX User Thread Model library on systems running
527186-023 Hewlett-Packard Company 5105