【发布时间】:2010-09-23 13:16:23
【问题描述】:
我去搜索这个,发现至少有一个人问但没有得到答案。我认为有必要启动一个发送和接收段(同一套接字连接上更大进程的一部分)并期望接收缓冲区中已经没有任何内容。
我没有看到任何答案,但在我自己意识到另一种看起来更干净的解决方法之前确实想到了这个问题(阅读下一段的“结尾”)。只需将 RecieveTimeout 设置为 1,或者,如果您认为发送方仍在发送过程中,则设置稍大一些的值。然后只需使用 socketflags = 0 调用 Receive 并丢弃结果。
谁有更好的办法?
【问题讨论】:
-
是的,我也是这样做的,将超时设置为 1,然后读取丢弃所有读取的内容,直到我得到 WSAETIMEDOUT... 真的很想知道还有其他方法吗!?跨度>