OMNI_32BIT_CONDITIONAL
MACRO

OMNI_32BIT_CONDITIONAL - If defined, uses 32-bit types in the omni::sync::conditional class.

SYNOPSIS top

#define OMNI_32BIT_CONDITIONAL

Signifies to enable the OMNI_32BIT_CONDITIONAL flag and utilize 32-bit types.

DESCRIPTION top

If defined, the omni::sync::conditional class will utilize a 32-bit intergral type for its wait counter, versus a 64-bit type.

CONSIDERATIONS top

A wait counter is kept because a conditional type cannot be destroyed while there are active waits; due to this, if a wait operation is preformed more than the maximum value for the underlying counter type, an overflow can occur and put the conditional into an undefined state. For example, if this flag is defined then the counter type will be 32-bit, thus the maximum number of wait operations that can be preforemd without a release operation is std::numeric_limits<uint32_t>::max().

PLATFORM SPECIFIC top

No platform specific notes.

NOTES top

See the considerations for this flag.