728x90
반응형
ip::tcp::acceptor
TCP 승인기(acceptor) 유형
typedef basic_socket_acceptor< tcp > acceptor;
유형
이 름 | 설 명 |
rebind_executor | 승인기(acceptor) 유형을 다른 실행기(executor)로 리바인드한다. |
broadcast | 브로드캐스트 메세지의 전송을 허용하는 소켓 옵션이다. |
bytes_readable | 블럭되지 않고 읽을 수 있는 데이터의 양을 가져오는 IO 컨트롤 커맨드이다. |
debug | 소켓-레벨 디버깅에 사용되는 소켓 옵션이다. |
do_not_route | 라우팅을 하지않고, 로컬 인터페이스만 사용하는 소켓 옵션이다. |
enable_connection_aborted | 승인이 취소된 연결을 보고하는 소켓 옵션이다. |
endpoint_type | 엔드포인트 유형이다. |
executor_type | 개체와 연결된 실행기(executor) 유형이다. |
keep_alive | keep-alive(접속 유지)를 전송하는 소켓 옵션이다. |
linger | 전송되지 않은 데이터가 있는 경우, 소켓을 닫을 수 있는지 여부를 지정하는 소켓 옵션이다. |
message_flags | 송수신 작업에 전달할 수 있는 플래그에 대한 비트 마스트 유형이다. |
native_handle_type | 승인기(acceptor)의 기본 유형이다. |
out_of_band_inline | 수신된 대역외 데이터를 인라인으로 넣기 위한 소켓 옵션이다. |
protocol_type | 프로토콜 유형 |
receive_buffer_size | 소켓의 수신 버퍼 크기에 대한 소켓 옵션이다. |
receive_low_watermark | 수신 Low-watermark에 대한 소켓 옵션이다. (응용프로그램에 한번에 읽을(read) 데이터 크기를 설정한다.) |
reuse_address | 이미 사용중인 주소에 소켓을 바인딩할 수 있는 소켓 옵션이다. |
send_buffer_size | 소켓의 송신 버퍼 크기에 대한 소켓 옵션이다. |
send_low_watermark | 송신 Low-watermark에 대한 소켓 옵션이다. |
shutdown_type | 소켓이 종료되는 다양한 방법이다. |
wait_type | 대기 유형 |
멤버 함수
이 름 | 설 명 |
accept | 새 연결을 승인한다. — 새 연결을 승인하고 피어의 엔드포인트를 가져온다. |
assign | 승인기(acceptor)에 기존의 기본 승인기(native acceptor)를 할당한다. |
async_accept | 비동기 승인을 시작한다. |
async_wait | 읽기/쓰기 준비가 되거나 보류중인 오류 조건이 있을 때까지 승인기(acceptor)가 비동기 대기를 한다. |
basic_socket_acceptor [생성자(constructor)] |
승인기(acceptor)를 열지 않고 생성한다. — 승인기(acceptor)를 열면서 생성한다. — 주어진 엔드포인트에서 열려 있는 승인기(acceptor)로 생성한다. — 기존의 기본 승인기(native acceptor)에서 basic_socket_acceptor를 생성한다. — 다른 basic_socket_acceptor에서 basic_socket_acceptor를 이동-생성한다. — 다른 프로토콜 유형의 승인기(acceptor)에서 basic_socket_acceptor를 이동-생성한다. |
bind | 주어진 로컬 엔드포인트에 승인기(acceptor)를 바인딩한다. |
cancel | 승인기(acceptor)와 관련된 모든 비동기 작업을 취소한다. |
close | 승인기를 닫는다. |
get_executor | 개체와 연결된 실행기(executor)를 가져온다. |
get_option | 승인기(acceptor)에서 옵션을 가져온다. |
io_control | 승인기(acceptor)에서 IO 컨트롤 커맨드를 수행한다. |
is_open | 승인기(acceptor)가 열려 있는지 확인한다. |
listen | 새 연결을 수신할 수 있는 상태로 승인기(acceptor)를 놓는다. |
local_endpoint | 승인기(acceptor)의 로컬 엔드포인트를 가져온다. |
native_handle | 기본 승인기(native acceptor) 형식을 가져온다. |
native_non_blocking | 기본 승인기(native acceptor) 구현의 넌 블럭킹 모드를 가져온다. — 기본 승인기(native acceptor) 구현의 넌 블럭킹 모드를 설정한다. |
non_blocking | 승인기(acceptor)의 넌 블럭킹 모드를 가져온다. — 승인기(acceptor)의 넌 블럭킹 모드를 설정한다. |
open | 지정된 프로토콜을 사용하는 승인기(acceptor)를 연다. |
operator= | 다른 basic_socket_acceptor에서 basic_socket_acceptor를 이동-할당한다. — 다른 프로토콜 유형의 승인기(acceptor)에서 basic_socket_acceptor를 이동-할당한다. |
release | 기저 기본 승인기(native acceptor)의 소유권을 해제한다. |
set_option | 승인기(acceptor)의 옵션을 설정한다. |
wait | 읽기/쓰기 준비가되거나 보류중인 오류 조건이 있을 때까지 승인기(acceptor) 대기한다. |
~basic_socket_acceptor [소멸자(destructor)] |
승인기(acceptor)를 소멸(파괴)한다. |
멤버 데이터
이 름 | 설 명 |
max_connections [static] | (사용안함:max_listen_connections를 사용) 연결 대기 큐의 최대 길이이다. |
max_listen_connections [static] | 연결 대기 큐의 최대 길이이다. |
message_do_not_route [static] | 데이터가 라우팅되지 않도록 지정한다. |
message_end_of_record [static] | 데이터가 레코드의 끝을 표시하도록 지정한다. |
message_out_of_band [static] | 대역외 데이터를 처리한다. |
message_peek [static] | 입력 큐에서 데이터를 제거하지 않고 수신 데이터를 확인한다. |
basic_socket_acceptor 클래스 템플릿은 새 소켓 연결을 승인하는데 사용된다.
스레드 안정성
고유 개체: 안전
공유 개체: 불안전
예제
SO_REUSEADDR 옵션이 사용된 상태에서 소켓 승인기(acceptor) 열기:
boost::asio::ip::tcp::acceptor acceptor(my_context);
boost::asio::ip::tcp::endpoint endpoint(boost::asio::ip::tcp::v4(), port);
acceptor.open(endpoint.protocol());
acceptor.set_option(boost::asio::ip::tcp::acceptor::reuse_address(true));
acceptor.bind(endpoint);
acceptor.listen();
요구사항
일반 헤더: boost/asio/ip/tcp.hpp
편의 헤더: boost/asio.hpp
Boost.Asio 홈
728x90
반응형
'Boost C++ Libraries > Boost.Asio' 카테고리의 다른 글
Boost.Asio 색인 - error::basic_errors (0) | 2021.01.03 |
---|---|
Boost.Asio 색인 - local::stream_protocol::acceptor (0) | 2021.01.01 |
Boost.Asio 색인 - basic_socket_acceptor::accept (0) | 2021.01.01 |
Boost.Asio 색인 - io_context::work::~work (0) | 2020.12.30 |
Boost.Asio 색인 - thread_pool::~thread_pool (0) | 2020.12.30 |