PTHREAD_ONCE_INIT Macro

Purpose

Initializes a once synchronization control structure.

Library

Threads Library (libpthreads.a)

Syntax

#include <pthread.h>
static pthread_once_t once_block = PTHREAD_ONCE_INIT;

Description

The PTHREAD_ONCE_INIT macro initializes the static once synchronization control structure once_block, used for one-time initializations with the pthread_once subroutine. The once synchronization control structure must be static to ensure the unicity of the initialization.

Note: The pthread.h file header file must be the first included file of each source file using the threads library. Otherwise, the -D_THREAD_SAFE compilation flag should be used, or the cc_r compiler used. In this case, the flag is automatically set.