目前,我正在实施网络经理来处理下载和上传任务。我有一个可确认URLSessionDownloadDelegate,URLSessionDelegate的类。我面临的问题是我正在使用用于所有服务调用的单个 session 对象。因此,当处理多个网络操作时,所有响应回调将在实现委托方法的类中处理。因此,要找到响应到达的调用,我正在比较委托方法的任务参数和当前正在运行的所有任务(我对 session 协议进行确认的类中的每个委托方法都有关闭属性)。还有其他方法可以达到这个结果吗?(我认为这在处理大量请求时不是一个好的解决方案)
最佳答案
理想情况下,您不应该自己进行比较,而应该将闭包存储在由任务对象作为键的字典中。确保在将一个任务替换为另一个任务的任何委托方法中更新字典。并确保每次都进行字典查找并将其存储在同一线程或串行队列中。
关于ios - 通过单个URLSessionDownloadDelegate确认类使用多个下载任务是一种好方法吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45142958/