![]() |
1
3
唯一可以检查的方法是在非阻塞套接字上执行非法操作,并检查它是否以预期的方式失败。几乎不是最坚固的设计。
除非使用
WSAIoctl
或
ioctlsocket
具有
|
![]() |
2
1
刚刚回答了同样的问题 here 所以这里有一个复制粘贴,希望它有帮助: 以前,你可以打电话 WSAIsBlocking 以确定这一点。如果您正在管理遗留代码,这可能仍然是一个选项。 否则,您可以在socket api上编写一个简单的抽象层。由于默认情况下所有套接字都是阻塞的,所以您可以维护一个内部标志,并通过API强制所有套接字操作,以便始终了解状态。 下面是一个跨平台的代码片段,用于设置/获取阻塞模式,尽管它不能完全满足您在Windows上的需要:
|
![]() |
3
0
从msdn返回 connect() :
|
![]() |
Community wiki · 需要改变的用户界面模式? 1 年前 |
![]() |
LITzman · 使用状态处理颜色主题更改 1 年前 |
![]() |
Community wiki · 进程。退出(0):输出消失? 1 年前 |
![]() |
arsaces · 将文本添加到特定文件的末尾 2 年前 |
![]() |
YGranja · 库<图形。h> MinGW-W64缺少 2 年前 |
![]() |
Felipe Palermo · Ctrl键仍被按下,按键事件() 2 年前 |
![]() |
HCJ · win cmd中的批处理脚本循环 2 年前 |