看起来为 Lua 套接字设置超时connect
仅在 之后有效,我不能使用assert (socket.connect (..))
,因为我有多个服务器要试用。
我的情况是,当一台服务器关闭(无法连接而不是网络不稳定)时,我将求助于另一台服务器,因此我必须在连接时超时。
有什么建议么?
编辑
我找到了 Lua TCP 套接字,但是我无法检测到连接失败,
local tcp = socket.tcp()
tcp:settimeout(1)
tcp:connect(...)
如果它不起作用,可能是因为您的 luasocket 太旧,请更新到版本 2:
从 LuaSocket 2.0 开始,settimeout 方法会影响 connect 的行为,导致它在超时的情况下返回错误。
(来源:http ://w3.impa.br/~diego/software/luasocket/tcp.html#connect )