linux socket timeout
时间: 2023-11-23 12:06:33 浏览: 165
Linux socket错误分析
在 Linux 中,可以使用 setsockopt 函数来设置 socket 的超时时间。具体来说,可以通过以下代码来设置连接超时时间:
```c
struct timeval timeout;
timeout.tv_sec = 5; // 5 seconds
timeout.tv_usec = 0;
int ret = setsockopt(sockfd, SOL_SOCKET, SO_SNDTIMEO, &timeout, sizeof(timeout));
if (ret < 0) {
perror("setsockopt");
exit(EXIT_FAILURE);
}
```
上述代码设置了发送超时时间为 5 秒。同样地,可以使用 SO_RCVTIMEO 选项来设置接收超时时间。需要注意的是,超时时间不是绝对准确的,可能会有一定的误差。
阅读全文