Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
从我读到的内容来看,这意味着发送缓冲区暂时已满,您应该稍后再尝试发送。这就是我的问题所在,这样的等待功能会是什么样子?我尝试了 WSAAsyncSelect 和 select 但无法弄清楚它们是如何工作的。
select() 是完全正确的工具,只需在网上找到任何类型的示例。请注意,WinSock 不会设置errno,而是WSASetLastError()在示例假定为 POSIX(Unix、Linux 等)系统时使用。如果有疑问,MSDN 是 WinSock 的参考,而不是 POSIX 规范!
errno
WSASetLastError()
您也可以使用WSAEventSelect(),它有一些优点,但使用起来也更复杂。暂时记住这一点并使用select().
WSAEventSelect()
select()