std::future<T>::share
std::shared_future<T> share() noexcept; |
Переносит общее состояние *this, если таковое имеется, в объект std::shared_future. Несколько объектов std::shared_future могут ссылаться на одно общее состояние, что невозможно с std::future.
После вызова share для std::future, valid() == false.
Параметры
(нет)
Возвращаемое значение
Объект std::shared_future, содержащий общее состояние, ранее принадлежавшее *this, если оно есть, созданный как будто std::shared_future<T>(std::move(*this)).
Пример
Отчёты об ошибках
Следующие отчёты об ошибках, изменяющие поведение, были применены ретроактивно к ранее опубликованным стандартам C++.
| DR | Применено к | Поведение как опубликовано | Корректное поведение |
|---|---|---|---|
| LWG 2556 | C++11 |
share() требует valid() быть true | требование удалено и сделано noexcept |
См. также
|
(C++11) | ожидание значения (возможно, ссылающегося на другие потоки), которое задано асинхронно (шаблон класса) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/thread/future/share