##### cppreference.com

##### Search

Create account

##### Namespaces

- Page
- Discussion

##### Variants

##### Views

- View
- Edit
- History

##### Actions

# std::once_flag

From cppreference.com
< cpp‎ | thread

Defined in header `<mutex>` |  |
class once_flag; |  | (since C++11)

The class `std::once_flag` is a helper structure for std::call_once.

An object of type `std::once_flag` that is passed to multiple calls to std::call_once allows those calls to coordinate with each other such that only one of the calls will actually run to completion.

`std::once_flag` is neither copyable nor movable.

### [edit] Member functions

## std::once_flag::once_flag

constexpr once_flag(); |  |

Constructs an `once_flag` object. The internal state is set to indicate that no function has been called yet.

### Parameters

(none)

### Exceptions

`noexcept` specification:
noexcept

### [edit] See also

call_once (C++11) | invokes a function only once even if called from multiple threads (function template) [edit]

Retrieved from "http://en.cppreference.com/mwiki/index.php?title=cpp/thread/once_flag&oldid=91540"
Category:

- unconditionally noexcept

Hidden categories:

- Pages with unreviewed unconditional noexcept template
- Pages with unreviewed noexcept template