std::execution:: ensure_started
From cppreference.net
C++
Execution control library
|
|
참고
이 유틸리티는 P2300에서 제거될 예정이며
async_scope
로 대체됩니다.
|
|
헤더 파일에 정의됨
<execution>
|
||
|
execution
::
sender
auto
ensure_started
(
execution
::
sender
auto
sender
)
;
|
(C++26부터) | |
매개변수
| sender | - |
중지된 채널이
err
에 매핑되는 입력 sender
|
반환값
제공된 sender 가 완료될 때 완료되며, 제공된 sender 의 값들과 동등한 값들을 전송하는 sender를 반환합니다.
참고 사항
-
ensure_started가 반환되면, 제공된 sender 가 연결되었고 결과적인 operation state에서 start가 호출되었음을 알 수 있습니다. 즉, 제공된 sender 에 의해 기술된 작업이 적절한 실행 자원에서 실행을 위해 제출되었음을 의미합니다.
- 반환된 sender가 execution::connect() 호출 전에 소멸되거나, execution::connect() 가 호출되었지만 반환된 operation-state가 execution::start() 호출 전에 소멸된 경우, 즉시 시작된 작업에 stop-request가 전송되고 작업은 분리되어 백그라운드에서 완료될 때까지 실행됩니다.
- 이러한 경우, 연산의 결과는 최종적으로 완료될 때 폐기됩니다.
- 애플리케이션은 작업이 분리되는 경우(예: 해당 리소스에 대한 std::shared_ptr 을 보유함으로써) 리소스가 계속 활성 상태로 유지되도록 해야 합니다.