1

IOCPアプリケーションを作成するときWSAAccept()の代わりに使用することをお勧めします。accept()しかしWSASocket()、オーバーラップされた I/O 関数に属しているのか、それとも別の Winsock 関数なのかはわかりません。

4

1 に答える 1

3

socket()MSDN のドキュメントと andを参照することで、この質問に答えることができると常に考えていました。具体的には、フラグを指定することしかWSASocket()できないため、重複した I/O (および IOCP) で使用できるソケットを作成できないと考えていました。ソケットを作成するとき。しかし、設定されたソケットを作成するので、それは正しくありません。socket()WSASocket()WSA_FLAG_OVERLAPPEDsocket()WSA_FLAG_OVERLAPPED

ただし、一般に、Windows の berkeley/POSIX ソケット関数は、その API をプログラミングしたい人々の便宜のために存在します。それらを使用する理由はほとんどなく、ネイティブの Windows API を優先する必要があります。

于 2015-03-09T18:24:20.480 に答える