共享会话与具有默认配置的会话

时间:2014-08-14 02:34:14

标签: objective-c

以这两种不同方式创建的两个session对象之间有什么区别:

NSURLSession *session = [NSURLSession sharedSession];

NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration];
NSURLSession *session = [NSURLSession sessionWithConfiguration:configuration];

2 个答案:

答案 0 :(得分:11)

当你使用它们时,它们在功能上非常相似。但是,使用sharedSession并不能让您自定义NSURLSessionConfiguration(例如调整缓存,自定义标头等),也不会使用NSURLSession的基于代理的再现。但如果您不需要这些功能,请随时使用sharedSession,因为它更容易。

答案 1 :(得分:1)

NSURLSessionConfiguration

会话,其中包含基于会话范围控制各种策略的基本属性集。这些属性在创建时在会话上设置,以后不能更改。如果需要更改这些策略属性,请使用修改后的会话配置创建新会话。

sharedSession

返回共享的单例会话对象。

请首先查看Apple文档,因为这些是非常信息的来源。