这个调用应该在很短的时间内返回,但是在某些机器上,它会花费非常接近1秒的时间。有没有人见过这个问题。我正在使用回环地址,所以网络应该不在画面之外。
发布于 2012-04-05 07:14:09
问题可能在窗口套接字实现中的某个地方。从操作系统的角度来看,调用closesocket (或CloseHandle)相当于释放驱动程序的“设备”对象。大多数驱动程序立即(同步)处理此请求,必要时中止所有(潜在的)未执行I/O。然而,“愚蠢”的司机可能会阻止你,直到事情完成。
我会这么做的:
SO_DONTLINGER选项。也就是说,指定您不希望等到所有挂起的数据都被发送到对等方。。
https://stackoverflow.com/questions/10023430
复制相似问题