2

我正在使用以下代码在类的 init 上创建一个 NSURLSession:

dispatch_once(&Static.token) { [unowned self] in
        let configuration = NSURLSessionConfiguration.backgroundSessionConfigurationWithIdentifier(CONSTANTS.BackgroundSessionUploadIdentifier)
        Static.session = NSURLSession(configuration: configuration, delegate: self, delegateQueue: nil)
    }

完成后,该类不会被取消初始化,并且任何未来上传的回调都将第一个类实例化为它们自己。上传完成后如何正确清理 NSURLSession?

我的整个班级可以在这里看到:

https://gist.github.com/aishowdown/e88f6595e5a23d936e29

4

1 回答 1

8

称呼

session.finishTasksAndInvalidate(),会话将在最后一个任务完成后销毁。

或者

session.invalidateAndCancel(),会话将立即销毁

于 2015-08-07T01:34:18.957 回答