stdcall 曾經 stdonce flag

std::call_once 確保競爭執行緒只執行一次函式。如果無法完成任務,它會丟擲 std::system_error

與 std::once_flag 一起使用。

#include <mutex>
#include <iostream>

std::once_flag flag;
void do_something(){
      std::call_once(flag, [](){std::cout << "Happens once" << std::endl;});
    
      std::cout << "Happens every time" << std::endl;
}