init_leave


Description:

[ Version ( since = "2.14" ) ]
public static void init_leave (size_t* value, size_t set_value)

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 *value_location