Android中OkHttp3中超时时间概述

目录

前言

可以看到,使用还是很简单的。主要相关的有这五个参数,其中我们常用到是就是connectTimeout、readTimeout和writeTimeout。

再看上图,可以看到默认下connectTimeout、readTimeout和writeTimeout都是10s,而其他两个默认是0。

connectTimeout

建立连接所用的时间,适用于网络状况正常的情况下,两端连接所用的时间。

防止客户端无限期地等待与服务器的连接。

readTimeout

从服务器接收到响应开始,到读取完所有响应数据的时间。

防止客户端在读取响应数据时因服务器发送数据过慢而长时间等待。

writeTimeout

客户端发送请求数据到服务器的时间。

确保客户端在发送请求数据时不会因网络问题或服务器接收数据过慢而无限期地等待。

callTimeout

这个值从调用call.execute()和enqueue()这两个方法开始计时,时间到后网络还未请求完成将调用cancel();

整个HTTP请求流程(包括连接、写入、读取等)所允许的最大时间。

pingInterval

没用过,和WebSocket有关。

拓展

其实我们还可以在拦截器里面动态设置超时,可以对某些url进行划分。另外,针对某些资源的获取如callTimeout的的设置会有一些问题。这里就不介绍了。

相关推荐
apple-mapping11 小时前
网络RTK定位学习总结
学习·网络rtk
楚山之石11 小时前
【Lancet Neurology 】多发性硬化认知障碍的 SDMT 筛查、灰质萎缩标志与认知康复循证路径
图像处理·人工智能·学习·mri
海海不掉头发13 小时前
CSDN博客_时序预测9模型复现对比
人工智能·学习·软件工程
拥小抱14 小时前
Compose 知识点
android
文章永久免费只为良心14 小时前
Web应用安全与防护_第三章_日志文件包含_从一道 CTFshow 题目讲透「日志投毒型 LFI → RCE」:原理、时序陷阱与全变种攻防手册
android·网络安全·渗透测试·漏洞危害·漏洞描述·日志投毒·红队指南
AIsoft_868915 小时前
学术讲座录音如何整理?录音APP可行吗
android·iphone
蓝祁子yoky15 小时前
Qt学习日记 Day13:网络编程(一)-TCP基础与Socket实战
网络·qt·学习
架构师伯子明16 小时前
Ros 学习十三:IK Demo
学习
小羊没烦恼!16 小时前
关于分布式锁原理的一些学习与思考-redis分布式锁,zookeeper分布式锁
java·服务器·网络·学习·负载均衡
幼儿园蛋小黄16 小时前
从 STM32N647 的 AI 部署入门嵌入式:一条可落地的学习路线
人工智能·stm32·学习