xml地图|网站地图|网站标签 [设为首页] [加入收藏]

内存泄漏检测日志之,封装AFN使用导致内存泄漏

来源:http://www.ccidsi.com 作者:集成介绍 人气:87 发布时间:2020-03-29
摘要:static JDNetworkTool *tool =nil; 在利用instruments做内部存款和储蓄器泄漏剖析时,发掘全部应用如下语句之处都有内部存款和储蓄器泄漏,OMG: = @implementation JDNetworkTool if (!_manager) { //PerfectSing

static JDNetworkTool *tool =nil;

在利用instruments做内部存款和储蓄器泄漏剖析时,发掘全部应用如下语句之处都有内部存款和储蓄器泄漏,OMG:

=

@implementation JDNetworkTool

if (!_manager) {

//PerfectSingleton.h

#import@interface PerfectSingleton : NSObject

(instancetype)Shareinstance;

@end


(JDNetworkTool *)request{

         self.manager = [AFHTTPSessionManager manager];

// PerfectSingleton.m

#import "PerfectSingleton.h"

PerfectSingleton *manager = nil;

@implementation PerfectSingleton

(instancetype)Shareinstance{

    if(!manager){

        static dispatch_once_t onceToken;

        dispatch_once(&onceToken, ^{

            manager = [PerfectSingleton new];

        });

    }

    return manager;

}

// 幸免利用alloc开采空间

(instancetype)allocWithZone:(struct _NSZone *)zone{

    if(!manager){

        static dispatch_once_t onceToken;

        dispatch_once(&onceToken, ^{

            manager = [super allocWithZone:zone];

        });

    }

    return manager;

}

// 防止copy

(id)copyWithZone:(struct _NSZone *)zone{

    if(!manager){

        static dispatch_once_t onceToken;

        dispatch_once(&onceToken, ^{

            manager = [super copyWithZone:zone];

        });

    }

    return manager;

}

// 使用同步锁保险init创制独一单例 ( 与once效果相仿 卡塔尔

- (instancetype)init{

    @synchronized(self) {

        self = [super init];

    }

    return self;

}

@end

static dispatch_once_t onceToken;

}

dispatch_once(&onceToken, ^{

只可以找度娘了,幸亏找到了杀绝办法,有长辈给出了消除方案:

if (tool==nil) {

图片 1

tool = [[self alloc]init];

不过作者所用到的互联网央浼不是很复杂,不想再新建类去写单例了,就把单例放在了AppDelegate中,用到的时候在通过AppDelegate拿。因为须要采纳AFHTTPSessionManager和AFU讴歌RDXLSessionManager,所以就各写三个单例方法。

}

static AFHTTPSessionManager *manager ;

});

static AFURLSessionManager *urlsession ;

return tool;

-(AFHTTPSessionManager *)sharedHTTPSession{

}

static dispatch_once_t onceToken;

本文由68399皇家赌场发布于集成介绍,转载请注明出处:内存泄漏检测日志之,封装AFN使用导致内存泄漏

关键词: 68399皇家赌场 日记本 性能测试 内存 AFN

最火资讯