socket 的读写超时时间超过十分钟,数据包会重传16次。参考:http://my.oschina.net/lowkey2046/blog/694229
我们可以通过设置 socket 选项 SO_SNDTIMEO 和 SO_RCVTIMEO 来减少读写 socket 的等待时间。
1. 程序源码
在源码 http://my.oschina.net/lowkey2046/blog/693852 基础上进行修改。
在创建 socket 后,通过 setsockopt 函数修改读写超时时间即可。测试时只修改客户端 socket 的超时。
client
int main(int argc, char **argv)
{
struct timeval tv;
/*
* 省略
*/
if ((sockfd