summaryrefslogtreecommitdiffstats
path: root/docs/nspr/reference/prcalloncetype.rst
diff options
context:
space:
mode:
Diffstat (limited to 'docs/nspr/reference/prcalloncetype.rst')
-rw-r--r--docs/nspr/reference/prcalloncetype.rst41
1 files changed, 41 insertions, 0 deletions
diff --git a/docs/nspr/reference/prcalloncetype.rst b/docs/nspr/reference/prcalloncetype.rst
new file mode 100644
index 0000000000..6d306d0222
--- /dev/null
+++ b/docs/nspr/reference/prcalloncetype.rst
@@ -0,0 +1,41 @@
+PRCallOnceType
+==============
+
+Structure for tracking initialization.
+
+
+Syntax
+------
+
+.. code::
+
+ #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 :ref:`PRCallOnceType`
+structure to all zeros. This initialization must be accomplished before
+any threading issues exist.