Executes the Callable object f exactly once, even if called from several threads.

Each group of call_once invocations that receives the same std::once_flag object will meet the following requirements:

Exactly one execution of exactly one of the functions (passed as f to the invocations in the group) is performed. It is undefined which function will be selected for execution. The selected function runs in the same thread as the call_once invocation it was passed to.

No invocation in the group returns before the abovementioned execution of the selected function is completed successfully, that is, doesn't exit via an exception.

If the selected function exits via exception, it is propagated to the caller. Another function is then selected and executed.