[AFHTTPSessionManager manager]内存

2018-12-07  本文已影响11人  人间一流

最近研究instruments 的 leak 功能时候,检测到

AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];

这句代码有内存泄漏的问题,一直追溯代码发现


这个delegate的修饰符用的是retain

发现delegate的修饰符是retain,所以创建的self.session这个变量永远不会被销毁,从而导致AFHTTPSessionManager 这个类不会被销毁,苹果官方有给出相应的解决方法

1.手动释放
在success和failure的block中调用

[manager.session finishTasksAndInvalidate];

请求结束之后手动释放session

上一篇下一篇

猜你喜欢

热点阅读