黑马程序员技术交流社区

标题: 多个autoreleasepool [打印本页]

作者: dawn.dai    时间: 2014-4-21 21:15
标题: 多个autoreleasepool
本帖最后由 dawn.dai 于 2014-4-21 21:48 编辑

autoreleasepool{
   autoreleasepool{
  }
}
,这种嵌套可以,那如果是这样写可以吗
autoreleasepool{ }
autoreleasepool{ }

作者: 啊康    时间: 2014-4-21 21:31
这样的方式也是可以的。
只要将相应的代码写入到相应的释放池的大括号中就可以。
释放池的存储方式相当于栈的存储方式
先进后出
释放池的创建是为了解决对象的释放时间或者说是释放地点的情况。
上面的第二种方式指的就是定义两个释放池。
他们是相互独立的,第一个释放池结束之后,没用的内存就会释放,并不会影响下一个释放池的创建。
只是要注意第二个释放池中不要引用第一个释放池中已经释放的对象,这样会造成野指针错误。
作者: dawn.dai    时间: 2014-4-21 21:50
啊康 发表于 2014-4-21 21:31
这样的方式也是可以的。
只要将相应的代码写入到相应的释放池的大括号中就可以。
释放池的存储方式相当于栈 ...

谢谢                 :D




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2