内存管理

2018-07-10  本文已影响6人  Jorunk

1.怎么保证多人开发进行内存泄漏的检查

2.非自动内存管理情况下怎么做单例模式

3.对于类方法(静态方法)默认是autorelease的,所有类方法都会是这样吗?

    NSArray *array = [[[NSArray alloc] init] autorelease];
    NSArray *array = [NSArray array];

4.block在ARC和MRC中的用法有什么区别,需要注意什么?

clang -rewrite-objc main.m
- (instancetype)init
{
    if (self = [super init]) {
        __block typeof(self) dog = self;//更专业
       // __block Dog *dog = self;
        self.block = ^{
            [dog run];
        }
    }
    return self;
}

5.什么情况下回发生内存泄漏和内存溢出?

6.[NSArray arrayWithObject:(nonnull id)]这个方法添加对象后,需要对这个数组被释放操作吗?
7. JSON数据的解析,和解析数据时有内存泄漏吗?有的话,如何解决?

1>JSON解析的方案

8.自动释放池底层怎么实现
非ARC内存管理原则
上一篇 下一篇

猜你喜欢

热点阅读