2010-02-09 3 views
0

C++에서 socket에 대한 간단한 래퍼 클래스를 작성하려고합니다. TcpSyncSocket 및 TcpAsyncSocket과 같은 I/O 유형에 특정한 구체적인 클래스를 가질 필요가 있는지 궁금합니다. 따라서 저는 여러분이 얼마나 자주 싱글 소켓에서 두 가지 종류의 I/O 작업을 혼합해야 하는지를 알고 싶습니다. 소켓 프로그래밍을하는 데 폭 넓은 경험을하지는 못했지만 아마도 이것이 단순한 표준이라면 아마도 그 아이디어를 버리 겠지요. 감사.단일 소켓에서 혼합 된 I/O 작업

답변

2

혼합 사용 동기화 대 비동기 소켓을 작성하거나 본 적이 없습니다. 일반적으로 사용법은 프로그램의 조직에 따라 달라지며 일반적으로 소켓의 수명 내내 변경되지는 않습니다.

+0

조직에 따라 달라질 것이라고 동의합니다. 얼마나 일반적인이 유스 케이스인지 궁금합니다. – shiouming

0

C++에서 "소켓 객체"를 구현하는 재사용 가능한 라이브러리에는 일반적으로 "setBlocking (bool)"메서드가 있습니다 소켓에.

다른 클래스를 사용하여 클래스 수를 늘리는 것보다 효과적이라고 생각합니다. 특히 사실에 비추어

는 차단 기능을 사용하면에 대한 지원을 추가 할 수있는 bazillion 다른 소켓 옵션에 대한 중 하나입니다.

그런 다음 TcpSyncSocketWithLargeRecvAndSendBuffer 및 TcpSyncSocketWithLargeRecvAndSendBufferResusable을가집니다.

나는 내가 여기거야 어디서 볼 생각합니다. :)

+0

그래, 무슨 말인지 알았어 :) – shiouming

관련 문제