Namespaces
Variants

std:: noop_coroutine_promise

From cppreference.net
Utilities library
Coroutine support
Coroutine traits
Coroutine handle
No-op coroutines
noop_coroutine_promise
(C++20)
Trivial awaitables
Range generators
(C++23)
헤더 파일에 정의됨 <coroutine>
struct noop_coroutine_promise { } ;
(C++20부터)

noop_coroutine_promise 는 no-op 코루틴의 promise 타입입니다.

no-op 코루틴은 다음과 같이 동작하는 것처럼 보입니다

  • 코루틴의 제어 흐름 외에는 아무것도 수행하지 않으며,
  • 시작 및 재개 직후에 즉시 일시 중단되고,
  • 상태를 파괴하는 작업이 no-op인 코루틴 상태를 가지며,
  • 이를 참조하는 std::coroutine_handle 이 존재하는 경우 절대 최종 일시 중단 지점에 도달하지 않습니다.

No-op 코루틴은 std::noop_coroutine 에 의해 시작될 수 있으며, 이가 반환하는 코루틴 핸들에 의해 제어됩니다. 반환된 코루틴 핸들은 std::noop_coroutine_handle 타입이며, 이는 std:: coroutine_handle < std :: noop_coroutine_promise > 의 동의어입니다.

일부 no-op 코루틴의 연산들은 컴파일 타임에 타입 std::noop_coroutine_handle 을 통해 no-op로 결정됩니다.

예제

참고 항목

재개되거나 파괴될 때 관찰 가능한 효과가 없는 코루틴 핸들을 생성합니다
(함수)
std:: coroutine_handle < std :: noop_coroutine_promise > , 무연산 코루틴을 참조하기 위한 목적
(타입 정의)