Namespaces
Variants

std::execution:: ensure_started

From cppreference.net
Definido en el encabezado <execution>
execution :: sender auto ensure_started ( execution :: sender auto sender ) ;
(desde C++26)

Parámetros

sender - entrada del emisor cuyo canal detenido está mapeado en err

Valor de retorno

Retorna un sender que se completa cuando el sender proporcionado se completa y envía valores equivalentes a los del sender proporcionado.

Notas

  • Una vez que ensure_started retorna, se sabe que el sender proporcionado ha sido conectado y start ha sido llamado en el estado de operación resultante. En otras palabras, el trabajo descrito por el sender proporcionado ha sido enviado para ejecución en los recursos de ejecución apropiados.
  • Si el remitente devuelto es destruido antes de que se llame a execution::connect() , o si se llama a execution::connect() pero el estado de operación devuelto es destruido antes de que se llame a execution::start() , entonces se envía una solicitud de parada a la operación iniciada con entusiasmo y la operación se separa y se ejecutará hasta completarse en segundo plano.
  • En tal caso, el resultado de la operación será descartado cuando finalmente se complete.
  • Tenga en cuenta que la aplicación necesitará asegurarse de que los recursos se mantengan activos en caso de que la operación se desvincule (por ejemplo, manteniendo un std::shared_ptr hacia esos recursos).