您的位置:首页 > 移动开发 > IOS开发

[iOS] AFNetworking3内存泄露

2016-08-09 13:57 302 查看
最近由于项目需求升级到AFN3,使用Instruments做内存泄漏分析时发现每个请求都有内存泄漏,调查发现原来是

AFHTTPSessionManager多次创建却不能释放掉

于是将其写入单例, 问题解决

static AFHTTPSessionManager *manager;

+ (id)shareInstance //获取网络请求单例
{
static NetworkHelper *helper;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
if (helper == nil)
{
helper = [[NetworkHelper alloc] init];

manager = [AFHTTPSessionManager manager];
manager.requestSerializer = [AFJSONRequestSerializer serializer];
manager.responseSerializer = [AFHTTPResponseSerializer serializer];
manager.requestSerializer.timeoutInterval = 10;
[manager.responseSerializer setAcceptableContentTypes: [NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript",@"text/html",@"text/css", nil]];
}
});
return helper;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息