小编mic*_*ael的帖子

套接字recv调用冻结线程约.5秒

我有一个用C++实现的客户端服务器体系结构,在Windows 7下使用阻塞套接字.一切都运行良好,达到一定的负载水平.如果有几个客户端(例如> 4)接收或发送兆字节数据,则有时与一个客户端的通信会冻结大约5秒钟.在这种情况下,所有其他客户端都按预期工作.

缓冲区大小为8192字节,服务器端的日志记录如下:

TimeStamp(s.ms) - 接收的字节数

...

1299514524.618 - 8192

1299514524.618 - 8192

1299514524.618 - 0004

1299514529.641 - 8192

1299514529.641 - 3744

1299514529.641 - 1460

1299514529.641 - 1460

1299514529.641 - 8192

...

似乎在5秒内只能读取4个字节.此外,我发现冻结时间总是大约5秒 - 从不4或更少,从不6或更多...

有任何想法吗?

最好的祝福

迈克尔

c++ sockets windows client-server winsock2

7
推荐指数
2
解决办法
1296
查看次数

标签 统计

c++ ×1

client-server ×1

sockets ×1

windows ×1

winsock2 ×1