std::future<T>:: valid
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member functions | ||||
| Getting the result | ||||
| State | ||||
|
future::valid
|
||||
|
bool
valid
(
)
const
noexcept
;
|
(начиная с C++11) | |
Проверяет, ссылается ли future на общее состояние.
Это верно только для future, которые не были созданы по умолчанию или перемещены (т.е. возвращены std::promise::get_future() , std::packaged_task::get_future() или std::async() ) до первого вызова get() или share() .
Поведение не определено, если любой член-функция, кроме деструктора, оператора перемещающего присваивания или
valid
, вызывается для
future
, который не ссылается на общее состояние (хотя реализации рекомендуется выбрасывать
std::future_error
с указанием
no_state
в этом случае). Допустимо перемещение из объекта future, для которого
valid()
возвращает
false
.
Содержание |
Параметры
(нет)
Возвращаемое значение
true если * this ссылается на общее состояние, иначе false .
Пример
#include <future> #include <iostream> int main() { std::promise<void> p; std::future<void> f = p.get_future(); std::cout << std::boolalpha; std::cout << f.valid() << '\n'; p.set_value(); std::cout << f.valid() << '\n'; f.get(); std::cout << f.valid() << '\n'; }
Вывод:
true true false
Смотрите также
|
ожидает, пока результат станет доступным
(публичная функция-член) |