java - 发出 HTTP 请求时在 Java 中实现超时的最佳方法

标签 java multithreading networking

是在 java.net.Socket 上使用 setSoTimeout 还是用另一个带有 ExecutorService 的类包装进行 Http 调用的服务并用 Futures 管理方法超时更好?

“更好”目前被定义为良好做法/更可靠/准确。不一定考虑对性能的影响,除非它是相当大的。

编辑:为了更清楚,还应该提到 java.net.Socket 上的 connect(SocketAddress endpoint, int timeout) 方法。

最佳答案

也没有?使用 HttpURLConnection.setReadTimeout()setConnectTimeout()

关于java - 发出 HTTP 请求时在 Java 中实现超时的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14859098/

相关文章:

java - 使用 Apache POI 生成 excel 下拉列表时的限制

c - WIN32线程程序问题

python - 如何在自己的scapy上设置流量到达时间

c - 使用 epoll 的 tcp 服务器给出非套接字错误

java - 为什么 Scanner.next() 不接受键盘输入按下?

java - 尝试使用 cassandra 数据存储从 eclipse 运行 nutch 时出现 java.lang.NullPointerException

python - python函数如何调用并且不等待它完成处理,而该函数必须被调用一次。因此,线程必须停止

multithreading - Postgresql事务 "COMMIT"线程安全吗?

ios - iOS 上的套接字 connect() 阻塞超过 30 秒

java - 复杂的lookbehind中的无限量词