WSAWaitForMultipleEvents等でうまく通知をキャッチできない場合、(他にWaitForSingleObject等)
イベント0が通知されているかもしれない

下記のコードはうまくいかない


下記のコードは微妙にうまくいく(FD_READの文には入らない)
このように、FD_READの前にイベント0を受け取る場合があり、このイベント0をうまく捌く必要がある。
イベント0を受け取った後にFD_READで再度待ち受けるようにすればうまくいく


※ポーリングによる待ち受けをしないためのWSAWaitForMultipleEventsであるが、
このコードのwhileはWin32アプリのメインループを意味している。

■この問題は下記のページより引用させて頂いた解決法である。
http://blog.livedoor.jp/yk_pointer/archives/64817113.html?1499485832

■続き
http://jamfolder.doorblog.jp/archives/23834141.html