在 python thrift 客户端中设置套接字的连接和读取超时

Posted

技术标签:

【中文标题】在 python thrift 客户端中设置套接字的连接和读取超时【英文标题】:Setting connection and read timeout for sockets in python thrift client 【发布时间】:2017-10-02 14:45:17 【问题描述】:

我正在使用python的官方thrift库执行以下代码来建立一个thrift服务器。

    `transport = TSocket.TSocket(self.__host, self.__port)`
    `transport.setTimeout(2000)`

这会将连接超时和读取超时的总和设置为 2 秒还是简单的连接超时。如果是这样,我如何设置读取超时,反之亦然。

【问题讨论】:

与link相同的问题 @shangliuyan 我想问你是否可以分别设置读取和连接超时。此外,setTimeout 方法会考虑哪个超时。 【参考方案1】:

settimeout 分别影响每个操作:例如 send、recv 和 connect 操作。 您似乎无法将读取超时设置为与连接超时不同。 此外,超时适用于每个操作,因此如果您先进行连接然后读取,您将有 2 + 2 秒的最大可能时间。 看到这是节俭的 TSocket 使用的方法: socket.settimeout(...)

【讨论】:

以上是关于在 python thrift 客户端中设置套接字的连接和读取超时的主要内容,如果未能解决你的问题,请参考以下文章

如何在 netty4 中设置 Web 套接字客户端未屏蔽模式文本框

有没有办法在 iOS 和 Android 设备中设置 Web 套接字服务器(不是客户端)?

建立多个连接时如何在C中设置套接字超时?

如何在c中设置UDP套接字中的源端口?

如何在 Web 套接字标头中设置 Sec-WebSocket-Key?

如何在 Java 1.4 中设置 BufferedReader 和 PrintWriter 的超时时间?