Structure for tracking initialization.

Syntax

#include <prinit.h>

typedef struct PRCallOnceType {
  PRIntn initialized;
  PRInt32 inProgress;
  PRStatus status;
} PRCallOnceType;

Fields

The structure has these fields:

initialized
If not zero, the initialization process has been completed.
inProgress
If not zero, the initialization process is currently being executed. Calling threads that observe this status block until inProgress is zero.
status
An indication of the outcome of the initialization process.

Description

The client is responsible for initializing the PRCallOnceType structure to all zeros. This initialization must be accomplished before any threading issues exist.