std::execution::read_env
Определён в заголовке <execution> | ||
|---|---|---|
inline constexpr /*unspecified*/ read_env{};
| (начиная с C++26) (объект точки настройки) | |
| Сигнатура вызова | ||
execution::sender auto read_env( auto&& query ); | (начиная с C++26) |
Фабрика отправителей, которая возвращает отправителя, обращающегося к окружению получателя и извлекающего текущее значение, связанное с заданным объектом запроса.
Для любого объекта запроса q выражение read_env(q) эквивалентно выражению /*make-sender*/(read_env, q).
Объекты точек настройки
Имя execution::read_env обозначает объект точки настройки, который является константным функциональным объектом литерального типа класса литерального semiregular. Подробности см. в разделе CustomizationPointObject.
Пример
Пример использования этой фабрики — планирование зависимой работы в планировщике получателя, который можно получить с помощью read_env(get_scheduler):
std::execution::sender auto task =
std::execution::read_env(std::execution::get_scheduler)
| std::execution::let_value([](auto sched) {
return std::execution::starts_on(sched, /*some nested work here*/);
});
std::this_thread::sync_wait( std::move(task) ); // wait for it to finish
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/execution/read_env