IOCP WSARecv 문의

익명 사용자의 이미지

Accept에서 소켓 연결 받고 이걸 IOCP에 연결한 다음에 바로 호출하는 WSARecv함수는 정확히 무슨의미인가요?

의사코드로 보면

SOCKET s = accept();
CreateIoCompletionPort(s,...);
WSARecv();
WSASend();
  .
  .
  .

accept 호출하고 IOCP에 소켓을 연결하는 쓰레드는 개별적으로 생성한 쓰레드고 GQCS호출을 하지 않은 쓰레드입니다.
IOCP에 소켓 연결 후 WSARecv를 호출하는게 비동기 입출력을 IOCP에 시작하겠다고 알리는 거면
그 다음 호출되는 WSASend는 GQCS를 호출한 워커 쓰레드쪽에서 처리되어야 하는것 아닌가요?
아니면 IOCP와는 관계없이 그냥 클라이언트로 바로 쏠 수 있는건가요?
shint의 이미지

//
관련된 주소를 구글. 네이버. 네이버책. 강컴 등에서 얻어봤습니다.
https://kldp.org/node/159249

//
각 함수에 인자값. 오류값. 리턴값을 MSDN 에서 확인해보시기 바랍니다.

//
TCPIP 나 IOCP 및 Overlapped IO 관련 책과 예제도 참고해보시기 바랍니다. (흐름 파악)

//
제 생각에는 그냥 함수 처럼 사용하시면 될것 같습니다.

//
윈도우에는 성능 좋은 통신 방법이 몇가지 있습니다.
- 원격 데스트탑
- 네트워크 드라이브
- 장치로 캐스트

- USB SATA LAN 연결
- RAMDISK 활용

----------------------------------------------------------------------------
젊음'은 모든것을 가능하게 만든다.

매일 1억명이 사용하는 프로그램을 함께 만들어보고 싶습니다.
정규 근로 시간을 지키는. 야근 없는 회사와 거래합니다.

각 분야별. 좋은 책'이나 사이트' 블로그' 링크 소개 받습니다. shintx@naver.com