Boost C++ Libraries/Boost.Asio

Boost.Asio - use_future_t

까마귀75 2021. 4. 12. 17:03
728x90
반응형

use_future_t

클래스는 비동기 작업이 future를 반환하도록 지정하는데 사용된다.

template<
    typename Allocator = std::allocator<void>>
class use_future_t

유 형

이 름 설 명
allocator_type 할당기(allocator) 유형. 할당기(allocator)는 주어진 비동기 작업에 대한 std::promise 개체를 생성할 때 사용된다.

멤버 함수

이 름 설 명
get_allocator 할당기(allocator)를 얻어온다.
operator() 패키지된 작업에서 함수 개체를 래핑한다.
operator[] (더 이상 사용하지 않음: rebind() 사용함.) 대체 할당기(allocator)를 지정한다.
rebind 대체 할당기(allocator)를 지정한다.
use_future_t
[constructor]
기본 생성 할당기(allocator)를 사용하여 생성한다.

지정된 할당기(allocator)를 사용하여 생성한다.

use_future_t 클래스는 비동기 작업이 std::future 개체를 반환해야 함을 나타내는데 사용된다. use_future_t 개체는 일반적으로 특수 값 boost::asio::use_future를 사용하여 비동기 작업에 대한 핸들러로 전달될 수 있다. 예를 들면 다음과 같다:

std::future<std::size_t> my_future
  = my_socket.async_read_some(my_buffer, boost::asio::use_future);

개시 함수(위 예에서 async_read_some)는 작업 결과를 받을 future를 반환한다. 작업이 실패를 나타내는 error_code와 함께 완료되면 system_error로 변환되고 future를 통해 호출자에게 다시 전달된다.

요구 사항

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

Boost.Asio 홈

728x90
반응형