std::atomic_flag::atomic_flag
From cppreference.com
                    
                                        
                    < cpp | atomic | atomic flag
                    
                                                            
                    |   Defined in header  <atomic>
  | 
||
|   atomic_flag() noexcept;  | 
(1) | (since C++11) | 
|   atomic_flag( const atomic_flag& ) = delete;  | 
(2) | (since C++11) | 
Constructs a new std::atomic_flag.
1) Trivial default constructor, initializes std::atomic_flag to unspecified state.
2) The copy constructor is deleted; std::atomic_flag is not copyable.
In addition, std::atomic_flag can be value-initialized to clear state with the expression ATOMIC_FLAG_INIT. For an atomic_flag with static storage duration, this guarantees static initialization: the flag can be used in constructors of static objects.
See also
|    (C++11)  | 
   initializes an std::atomic_flag to false   (macro constant)  |