今天爱分享给大家带来在AFURLSessionManager中出现了如下代码的有什么作用,希望能够帮助到大家。
[self.session getTasksWithCompletionHandler:^(NSArray *dataTasks, NSArray *uploadTasks, NSArray *downloadTasks) {
for (NSURLSessionDataTask *task in dataTasks) {
[self addDelegateForDataTask:task uploadProgress:nil downloadProgress:nil completionHandler:nil];
}
for (NSURLSessionUploadTask *uploadTask in uploadTasks) {
[self addDelegateForUploadTask:uploadTask progress:nil completionHandler:nil];
}
for (NSURLSessionDownloadTask *downloadTask in downloadTasks) {
[self addDelegateForDownloadTask:downloadTask progress:nil destination:nil completionHandler:nil];
}
}];
回答: 置空当前Session里面的任务
1.异步的获取当前session的所有未完成的task。其实讲道理来说在初始化中调用这个方法应该里面一个task都不会有
2.这是为了防止后台回来,重新初始化这个session,一些之前的后台请求任务,导致程序的crash。(后台任务重新回来初始化session,可能就会有先前的任务,这个时候就需要置空这些任务)
原文链接:https://blog.itblood.com/616.html,转载请注明出处。

![[StudioFOW] Subverse 颠覆 Ver1.1.1 tt_君完整汉化步兵版+全解锁存档 [66G/全CV/新汉化] [大作3D/精翻汉化/步兵]](/wp-content/uploads/replace/2025/07/19/7fa595345d950cb1000fd74307da6dd7.webp)