Windows Vista에서 입출력 완료 포트에 관한 프로그램을 작성하면 첫 번째 샘플이 작동하지 않고 GetQueuedCompletionStatus()가 OVERLAPPED 구조체 을 얻을 수 없습니다.윈도우에 대한 질문 iocp
그래서 전역 범위에 OVERLAPPED 구조를 넣었으며 놀랍도록 작동합니다. 왜 그럴까요?
코드 1 :
int main()
{
OVERLAPPED o;
..
CreateIoCompletionPort(....);
for (int i = 0; i<10; i++)
{
WriteFile(..,&o);
OVERLAPPED* po;
GetQueuedCompletionStatus(..,&po);
}
}
CODE2 :
OVERLAPPED o;
int main()
{
..
CreateIoCompletionPort(....);
for (int i = 0; i<10; i++)
{
WriteFile(..,&o);
OVERLAPPED* po;
GetQueuedCompletionStatus(..,&po);
}
}
내 게시물을 언젠가 다시 편집했습니다. 다시 보길 원할 것입니다. – dirkgently