728x90
반응형
yield_context
현재 실행중인 코-루틴을 나타내는 컨텍스트 개체이다.
typedef basic_yield_context< unspecified > yield_context;
유 형
이 름 | 설 명 |
callee_type | 구현에서 사용되는 코-루틴 수신자 유형이다. |
caller_type | 구현에서 사용되는 코-루틴 호출자 유형이다. |
멤버 함수
이 름 | 설 명 |
basic_yield_context [constructor] |
지정된 코-루틴을 나타내는 yield 컨텍스트를 생성한다. — 다른 yield 컨텍스트 유형에서 yield 컨텍스트를 생성한다. |
operator[] | 지정된 error_code를 설정하는 yield 컨텍스트를 반환한다. |
basic_yield_context 클래스는 현재 실행중인 스택형 코-루틴을 나타내는 데 사용된다. basic_yield_context는 비동기 작업에 대한 핸들러로 전달될 수 있다. 예를 들면:
template <typename Handler> void my_coroutine(basic_yield_context<Handler> yield) { ... std::size_t n = my_socket.async_read_some(buffer, yield); ... }
개시 함수(위 예제의 async_read_some)는 현재 코-루틴을 일시 정지한다. 코-루틴은 비동기 작업이 완료되면 다시 시작하고, 작업 결과가 반환된다.
요구 사항
일반 헤더: boost/asio/spawn.hpp
편의 헤더: 없음
Boost.Asio 홈
728x90
반응형
'Boost C++ Libraries > Boost.Asio' 카테고리의 다른 글
Boost.Asio - associated_executor (0) | 2021.03.17 |
---|---|
Boost.Asio - io_context (0) | 2021.03.16 |
Boost.Asio 색인 - windows::basic_random_access_handle::write_some_at (0) | 2021.03.12 |
Boost.Asio 색인 - windows::basic_stream_handle::write_some (0) | 2021.03.12 |
Boost.Asio 색인 - ssl::stream::write_some (0) | 2021.03.12 |