Я заметил, что когда я вызываю closesocket, подпрограмма завершения WSARecvFrom (которая к тому времени ожидает входящие данные) запускается с dwError = 0 и cbTransferred = garbage, даже если нет ожидающих входящих данных для этого сокета.
Можно ли как-нибудь не вызывать его, когда я закрываю сокет? Я пытался вызвать shutdown до closesocket, но это не помогло.