请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于 autoreleasePool 的理解

于海老师你好,我暂时有几点不是很理解:

  1. autoreleasePool 是双向链表结构,这个结构的意义或者作用体现在哪里?

  2. 源码中有出现 hotPage() 这样一个方法,应该也有相应的 hotPage 概念,不知到如何理解?是否跟第1问有关?

  3. 视频中说到的 栈的 next  指针 和 AutoreleasePoolPage 中的成员变量 next 是同一个意思吗?

            谢谢老师抽空回答!

正在回答

1回答

于海 2018-06-08 10:15:10

一个page大约是1024B 可以根据实际情况以添加一个page的方式动态增长
添加需要autorelease对象需要移动指针,释放需要回退指针 由于以page作为单元增长空间,那么双向链表的特点刚好可以满足,一般我们解决一个问题都是要思考问题的特点是什么,现有掌握的技术点的特点是什么,如果有一种方式刚好匹配,那么就是解决方案。

Next指针和数据结构当中提到的是同一个

1 回复 有任何疑惑可以回复我~
  • 提问者 HWHZSY #1
    这样的话,对“AutoreleasePool 以栈为节点通过双向链表的形式组合而成” 有点疑问?不是 以“AutoreleasePoolPage 为结点” 吗?
    回复 有任何疑惑可以回复我~ 2018-06-09 14:21:10
  • 于海 回复 提问者 HWHZSY #2
    PoolPage的结构就是一个栈的表达
    回复 有任何疑惑可以回复我~ 2018-06-09 16:08:55
  • 提问者 HWHZSY 回复 于海 #3
    好的,明白老师的意思!
    回复 有任何疑惑可以回复我~ 2018-06-09 16:43:34
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信