Chris Fairles wrote: > Yeah. I'm not a huge fan of this global function<> w/ mutex method... The main drawback I see is that function<>'s (copy) constructor or assignment operator are allowed to throw. You could std::move in __once_proxy though.