Boost C++ Libraries/Boost.Asio

Boost.Asio - use_awaitable_t

까마귀75 2021. 3. 22. 13:11
728x90
반응형

use_awaitable_t

현재 실행중인 코-루틴을 나타내는 완료 토큰이다.

template<
    typename Executor = any_io_executor>
struct use_awaitable_t

[Executor]

유 형

이 름 설 명
executor_with_default 기본 값으로 use_awaitable_t 완료 토큰을 추가하도록 실행기(executor)를 조정한다.

멤버 함수

이 름 설 명
as_default_on
[static]
use_awaitable_t를 기본 완료 토큰 유형으로 사용하도록 I/O 개체를 조정하는 함수 도우미이다.
use_awaitable_t
[constructor]
기본 생성자

파일 이름, 라인, 함수 이름을 명시하는 데 사용되는 생성자.

값이 use_awaitableuse_awaitable_t 클래스는 현재 실행중인 코-루틴을 나타내는 데 사용된다. 이 완료 토큰은 비동기식 작업에서 핸들러로 전달될 수 있다. 예를 들면 아래와 같다:

 

awaitable<void> my_coroutine()
{
  std::size_t n = co_await my_socket.async_read_some(buffer, use_awaitable);
  ...
}

co_await와 사용될 때, 개시함수(위 예에서 async_read_some)는 현재 코-루틴을 일시 중지한다. 비동기식 작업이 완료되고 작업의 결과가 반환되면 코-루틴이 다시 시작된다.

요구 사항

일반 헤더 : boost/asio/use_awaitable.hpp
편의 헤더 : boost/asio.hpp

Boost.Asio 홈

728x90
반응형