首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果我正在使用GCD,是否需要创建@autorelease

如果我正在使用GCD,是否需要创建@autorelease
EN

Stack Overflow用户
提问于 2016-04-26 07:23:56
回答 1查看 109关注 0票数 1

我读过很多关于何时使用@autorelease的讨论--有人建议在您的应用程序中创建一个辅助线程时编写自己的@autorelease池--关于这一点的一些讨论描述了您不需要创建@autorelease池,而且当我使用GCD时,是否也需要创建外部@autorealease池?

所以请在座的任何一位,纠正我关于哪种场景的自动发布的问题。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-12-22 11:45:40

如果您的块创建了不止几个objects对象,您可能希望将块代码的部分包含在@autorelease块中,以处理这些对象的内存管理。

虽然GCD调度队列有自己的自动释放池,但它们无法保证何时耗尽这些池。如果您的应用程序内存受限,创建您自己的自动释放池允许您将内存释放给自动释放的对象,时间间隔更长。

因此,如果您只分配几个对象,不要担心it.However,如果您要分配大量的对象(并且因为您是针对内存受限的环境),那么您应该创建和耗尽池。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36857998

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档