Namespaces
Variants

std::shared_future<T>:: get

From cppreference.net
Concurrency support library
Threads
(C++11)
(C++20)
this_thread namespace
(C++11)
(C++11)
Cooperative cancellation
Mutual exclusion
Generic lock management
Condition variables
(C++11)
Semaphores
Latches and Barriers
(C++20)
(C++20)
Futures
(C++11)
(C++11)
(C++11)
Safe reclamation
Hazard pointers
Atomic types
(C++11)
(C++20)
Initialization of atomic types
(C++11) (deprecated in C++20)
(C++11) (deprecated in C++20)
Memory ordering
(C++11) (deprecated in C++26)
Free functions for atomic operations
Free functions for atomic flags
Основной шаблон
const T & get ( ) const ;
(1) (начиная с C++11)
std:: shared_future < T & > специализации
T & get ( ) const ;
(2) (начиная с C++11)
std:: shared_future < void > специализация
void get ( ) const ;
(3) (начиная с C++11)

Функция-член get ожидает (вызывая wait() ) до тех пор, пока общее состояние не будет готово, после чего извлекает значение, хранящееся в общем состоянии (если оно есть).

Если valid() возвращает false до вызова этой функции, поведение не определено.

Содержание

Возвращаемое значение

1) Константная ссылка на значение, хранящееся в общем состоянии. Поведение при доступе к значению через эту ссылку после уничтожения общего состояния не определено.
2) Ссылка, хранящаяся как значение в общем состоянии.
3) (нет)

Исключения

Если в общем состоянии, на которое ссылается future, было сохранено исключение (например, с помощью вызова std::promise::set_exception() ), то это исключение будет выброшено.

Примечания

Стандарт C++ рекомендует реализациям обнаруживать случай, когда valid() имеет значение false до вызова и выбрасывать исключение std::future_error с кодом ошибки std::future_errc::no_state .

Пример

Смотрите также

проверяет, содержит ли future общее состояние
(публичная функция-член)