Onces represent initializations that should only ever happen once per process, in a thread-safe way.
Max size of the SbOnceControl type.
An opaque handle to a once control type with reserved memory buffer of size SB_ONCE_MAX_SIZE and aligned at void pointer type.
typedef union SbOnceControl SbOnceControl
Function pointer type for methods that can be called via the SbOnce() system.
typedef void(* SbOnceInitRoutine) (void)
init_routine only once.
once_control has not run a function yet, this function runs
init_routine in a thread-safe way and then returns
If SbOnce() was called with
once_control before, the function returns
init_routine is invalid, the function returns
bool SbOnce(SbOnceControl *once_control, SbOnceInitRoutine init_routine)