IOCP worker마다 종료 패킷을 보내려 합니다. 미완료 I/O와 종료 패킷 소비 순서를 어떻게 맞추나요?
꼬리 질문을 독립 문항으로 확장했습니다. 원래 문항에서 맥락 보기 →
잠깐, 답변을 보기 전에
먼저 내 말로 설명해 볼까요?
답변과 점검 포인트 펼치기답변 접기
01
구두 답변
정의를 외우기보다, 원리와 조건을 연결해 설명해 보세요.
신규 제출을 막고 이미 등록된 I/O의 완료·취소를 모두 정리한 뒤 worker 종료 신호를 보내는 순서를 사용합니다. 종료 패킷을 먼저 소비해 worker가 사라지면 남은 I/O를 처리하지 못할 수 있습니다.
worker 수와 제어 패킷 규약, 깨어난 worker가 다른 신호를 가로채지 않는 정책을 확인합니다. timeout·즉시 실패·사용자 패킷·취소 완료를 포함해 실제 pending 집합이 비었는지 검사합니다.
02
득점 포인트
이해가 드러나는 지점을 확인해 보세요.
- 신규 제출을 막고 이미 등록된 I/O의 완료·취소를 모두 정리한 뒤 worker 종료 신호를 보내는 순서를 사용합니다. 종료 패킷을 먼저 소비해 worker가 사라지면 남은 I/O를 처리하지 못할 수 있습니다.
- timeout·즉시 실패·사용자 패킷·취소 완료를 포함해 실제 pending 집합이 비었는지 검사합니다.
03
감점 포인트
놓치기 쉬운 조건과 오해를 짚어 보세요.
- 다음 핵심 구분을 반대로 설명하거나 성립 조건을 생략한다: 신규 제출을 막고 이미 등록된 I/O의 완료·취소를 모두 정리한 뒤 worker 종료 신호를 보내는 순서를 사용합니다.
04
더 파고들 거리
하나 더 질문하며 이해의 범위를 넓혀 보세요.
득점·감점 포인트는 학습용 자기 점검 기준이며, 특정 회사의 실제 채점표가 아닙니다.
원리부터 공부하고 싶다면
답변을 보충하는 개념·예제·슈도코드를 읽어 보세요.