std::execution:: ensure_started
From cppreference.net
C++
Execution control library
|
|
Nota
Esta utilidad está planificada para ser eliminada de P2300 y reemplazada por
async_scope
.
|
|
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_startedretorna, 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).