Namespaces
Variants

std::execution:: ensure_started

From cppreference.net
Определено в заголовке <execution>
execution :: sender auto ensure_started ( execution :: sender auto sender ) ;
(начиная с C++26)

Параметры

sender - входной отправитель, остановленный канал которого отображается в err

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

Возвращает отправитель, который завершается, когда предоставленный sender завершается, и отправляет значения, эквивалентные значениям предоставленного sender .

Примечания

  • После того как ensure_started возвращает управление, известно, что предоставленный sender был подключен и метод start был вызван для результирующего состояния операции. Другими словами, работа, описанная предоставленным sender , была отправлена на выполнение на соответствующие вычислительные ресурсы.
  • Если возвращенный отправитель уничтожен до вызова execution::connect() , или если execution::connect() вызван, но возвращенное состояние операции уничтожено до вызова execution::start() , то запрос на остановку отправляется eagerly запущенной операции, операция отсоединяется и будет завершаться в фоновом режиме.
  • В таком случае результат операции будет отброшен после её окончательного завершения.
  • Обратите внимание, что приложению необходимо обеспечить сохранение ресурсов активными в случае, если операция отсоединяется (например, путем удержания std::shared_ptr на эти ресурсы).