封装AFN使用导致内存泄漏

用instruments测试项目的时候发现内存泄漏了,点击一看都是AFN导致的,主要原因还是封装这个工具类时没有使用到单利

static JDNetworkTool *tool =nil;

@implementation JDNetworkTool

+(JDNetworkTool *)request{

static dispatch_once_t onceToken;

dispatch_once(&onceToken, ^{

if (tool==nil) {

tool = [[self alloc]init];

}

});

return tool;

}

AFHTTPSessionManager的这个类也要改成单利模式

-(AFHTTPSessionManager *)manager{

static  AFHTTPSessionManager *manager=nil;

static dispatch_once_t onceToken;

dispatch_once(&onceToken, ^{

if (manager==nil) {

manager = [AFHTTPSessionManager manager];

manager.responseSerializer.acceptableContentTypes = [NSSet setWithObject:@"text/plain"];

manager.requestSerializer.timeoutInterval=REQUESTTIMEOUT;

}

});

return manager;

}

这样就解决了调用afn导致内存泄漏的问题了

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 218.241.181.202 wxhl60 123456 192.168.10.253 wxhl66 wxhl6...
    CYC666阅读 1,489评论 0 6
  • AFN什么是AFN全称是AFNetworking,是对NSURLConnection、NSURLSession的一...
    JonesCxy阅读 1,282评论 0 5
  • 1.在开发的时候可以创建一个工具类,继承自我们的AFN中的请求管理者,再控制器中真正发请求的代码使用自己封装的工具...
    红楼那一场梦阅读 3,560评论 2 3
  • 今天在做内存泄漏检测时,发现很多地方都有内存泄漏,而引起泄漏的原因居然AFN, 网上查了资料了解到由于ARC机制导...
    qjsxq阅读 1,182评论 0 2
  • AFN什么是AFN全称是AFNetworking,是对NSURLConnection、NSURLSession的一...
    醉叶惜秋阅读 1,266评论 0 0