networking - linux上套接字的连接超时是多少

标签 networking sockets ubuntu

我有一个在 linux ubuntu 上运行的程序,它尝试使用 TCP 连接到服务器端口。
你能告诉我如何找出连接到ubuntu服务器套接字的客户端套接字的超时值吗?

谢谢你。

最佳答案

最好的、可移植的解决方案是使用你自己的超时来确保你可以依赖一个已知的值:

1) 之前 connect() ing,将客户端套接字设置为非阻塞。使用ioctl()FIONBIO标志或 fcntl()O_NONBLOCK标志。 Win32下使用ioctlsocket()FIONBIO旗帜。

2) connect()到远程对等点:如果 connect()成功了,好吧,你已经连接了。

3) 但是如果 connect()返回 -1 并设置 errnoEINPROGRESS (WSAEWOULDBLOCK 在 Win32 下),只需 select()使用您自己的超时写入的套接字描述符。

关于networking - linux上套接字的连接超时是多少,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2961761/

相关文章:

php - 如何从 Objective-C/iOS 中恢复 PHP $_SESSION 变量?

php - CLI php 在命令提示符下运行 php

python-3.x - 谷歌应用引擎 - 应用因长期部署而变得不健康

linux - (ONIE) stg : command not found and Error 127 in Ubuntu terminal

Android——通过socket编程发送图片

MySQL COM_EXECUTE_STMT 失败并出现错误,但该错误没有意义

android - 仅来自网络的 GPS 位置

networking - Docker - 创建新网络时如何设置 iface 名称

sockets - j2me(BB)中的套接字输入流问题

java - 如何监听套接字输入而不阻塞其他请求