gpt4 book ai didi

ios - 发送多个 POST 的最佳做法是什么

转载 作者:行者123 更新时间:2023-11-30 11:41:23 25 4
gpt4 key购买 nike

在我的iOS应用程序中,我需要发布多个数据包(作为不同的POST请求),目前我正在为每个请求创建不同的NSURL session ,并且我面临着一个问题,我有大约20个或更多的数据包在队列中,当我将所有这些都一一发布时,只有少数会通过,其余的我收到超时错误

我的分析是HTTPMaximumConnectionsPerHost在 iOS 中默认为 4,即我们在一个 session 中只能同时有 4 个并行连接,其他请求将进入挂起状态,最终我收到超时错误

如何更好地处理这个问题?

如果我将 HTTPMaximumConnectionsPerHost 设置为 100 左右可以吗?

以下是用于发布数据的代码,我通过在 for 循环中调用以下函数来发布多个数据包

func send(_ request: URLRequest, completionHandler handler: handler?) {
let session = URLSession(configuration: URLSessionConfiguration.ephemeral)
let dataTask = session.dataTask(with: request as URLRequest) { (data, response, error) in
handler?(respHandler(inData: data as Data?, inResponse: response, inError: error as NSError?))
}
dataTask.resume()
session.finishTasksAndInvalidate()
}

最佳答案

编写一个简单的队列,在其中放置 URLSessionDataTask。然后从队列中取出一项任务,调用resume方法,当任务完成时,对队列中的其他任务执行类似的操作。

关于ios - 发送多个 POST 的最佳做法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49252976/

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