gpt4 book ai didi

Android 截击超时无法正常工作

转载 作者:行者123 更新时间:2023-11-29 01:38:44 26 4
gpt4 key购买 nike

我正在使用 android volley,当我发出请求时出现超时错误。我使用

增加了超时
request.setRetryPolicy(new DefaultRetryPolicy(
5000,
DefaultRetryPolicy.DEFAULT_MAX_RETRIES,
DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));

此实现的问题是我得到的结果是 request.finish: 7123ms。我应该采取超时错误。我对 android 超时有什么不了解的吗?如何将超时精确设置为 5000 毫秒?

编辑:我在 prasadthangavel.blogspot 找到在每次重试中,请求都会增加其时间。我认为这应该是我的问题,但是如果我将请求编辑为

request.setRetryPolicy(new DefaultRetryPolicy(
5000, 0,0));

根据android volley默认重试策略

@Override
public void retry(VolleyError error) throws VolleyError {
mCurrentRetryCount++;
mCurrentTimeoutMs += (mCurrentTimeoutMs * mBackoffMultiplier);
if (!hasAttemptRemaining()) {
throw error;
}
}
/**
* Returns true if this policy has attempts remaining, false otherwise.
*/
protected boolean hasAttemptRemaining() {
return mCurrentRetryCount <= mMaxNumRetries;
}`

不会进行其他重试。但这也没有解决我的问题。我有一些正在使用 request.finish 7200ms 执行的请求。为什么每次连接时间或读取时间大于 5000 毫秒时都不会抛出异常?

最佳答案

检查你的代码

request.setRetryPolicy(new DefaultRetryPolicy(
5000,
DefaultRetryPolicy.DEFAULT_MAX_RETRIES,
DefaultRetryPolicy.DEFAULT_BACKOFF_MULT));

你设置超时为5000ms,重试次数设置为DefaultRetryPolicy.DEFAULT_MAX_RETRIES,其值为1,意思是。第一次请求的请求超时为 5 秒,重试请求为 5 秒。在您的情况下,两次请求后意味着 10 秒。会发生请求超时。

关于Android 截击超时无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26214709/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com