AutoreleasePool

作者: 九月oc | 来源:发表于2021-06-15 15:47 被阅读0次

    AutoreleasePool 是用来管理对象引用计数的,在mrc情况下我们可以用NSAutoreleasePool alloc 来生成 ,在arc情况下可以用@auturelease「」来生成aureleasepool  那么自动释放池子中其实是可以嵌套自动释放池的, 并且自动释放池是通过一个双向链表来进行对象管理的,每一个autoreleasePage的默认大小是4096字节 , 如果超过了对应的字节那么要新的开辟对象。

    @autorelease {   = autorelelease Push.

    } = autorelease pop

    总的来说,一般我们自己生成的AutoreleasePool 在超过了作用域之后就会自己调用drain方法并且pop处对象 release 这个过程由我们自己来确定。 

    如果是系统自己的autoreleasePool 那么这里会由runloop进行管理,在适当的时机向AutoreleasePool中的对象发送release消息。

    相关文章

      网友评论

        本文标题:AutoreleasePool

        本文链接:https://www.haomeiwen.com/subject/iqvzeltx.html