一、直接上解决办法:
request = (HttpWebRequest)WebRequest.Create(info.url);
request.ReadWriteTimeout = 3000; (设置读写超时时间,没戳,就是这么简单)
官方解释,翻译过来大概意思是 :控制Read和Write的时间
二、参考大佬经验
1、C# .net 中 Timeout 的处理及遇到的问题 - BUTTERAPPLE - 博客园 (cnblogs.com)(解决了我的问题)
2、(54条消息) C#-WebRequest 超时不起作用_HOLD ON!的博客-CSDN博客_c# timeout 没管用(没能解决我的问题)
三、问题描述
1、环境。首先问题出现在公司两台测试手机(都是华为),我的小米,和另一台vivo下载并没有问题。
2、表现。例如下载140M,下载过程看起来正常,下载到最后会停下来,通过日志能知道有资源已经建立了连接,但是Read方法卡着了,过一两分钟才会出现超时的异常,也可能不出现异常,一直卡