728x90
반응형
스트림-지향 핸들 (Stream-Oriented HANDLEs)
Boost.Asio에는 명명된 파이프와 같은 Windows HANDLE에서 비동기식 읽기/쓰기 작업을 수행할 수 있는 클래스가 포함되어 있다.
예를 들어, 명명된 파이프에서 비동기 작업을 수행하려면 다음과 같은 객체를 생성할 수 있다:
HANDLE handle = ::CreateFile(...); windows::stream_handle pipe(my_io_context, handle);
그런 다음 동기식이나 비동기식 읽기/쓰기 스트림으로 사용된다. 이것은 개체가 read(), async_read(), write(), async_write(), read_until(), async_read_until() 중 사용 가능한 함수와 함께 사용될 수 있음을 의미한다.
HANDLE에서 참조하는 커널 개체는 I/O 완료 포트(즉, 명명된 파이프는 지원되지만, 익명 파이프나 콘솔 스트림은 지원하지 않음을 의미)의 사용을 지원해야 한다.
더 보기
참고
Windows 스트림 HANDLE은 대상이 Windows이고 I/O 완료 포트 백엔드가 사용되는 경우(기본값)에만 컴파일 타임에 사용할 수 있다. 프로그램은 BOOST_ASIO_HAS_STREAM_HANDLE 매크로를 테스트하여 지원 여부를 결정할 수 있다.
728x90
반응형
'Boost C++ Libraries > Boost.Asio' 카테고리의 다른 글
Boost.Asio 개요 - Windows 전용 기능 - 객체 핸들 (0) | 2020.12.12 |
---|---|
Boost.Asio 개요 - Windows 전용 기능 - 임의-접근 핸들 (0) | 2020.12.12 |
Boost.Asio 개요 - Windows 전용 기능 (0) | 2020.12.12 |
Boost.Asio - POSIX 전용 기능 - 포크 (0) | 2020.12.12 |
Boost.Asio - POSIX 전용 기능 - 스트림-지향 파일 설명자 (0) | 2020.12.12 |