init_leave
Description:
Counterpart to init_enter.
Expects a location of a static 0-initialized initialization variable, and an initialization value other than 0. Sets the variable to the initialization value, and releases concurrent threads blocking in init_enter on this initialization variable.
While location
has a `volatile` qualifier, this is a historical artifact and the pointer passed to it should not be `volatile`.
Parameters:
location |
location of a static initializable variable containing 0 |
result |
new non-0 value for * |