gpt4 book ai didi

iphone - 为什么自动释放对于 iPhone 应用程序特别危险/昂贵?

转载 作者:太空狗 更新时间:2023-10-30 03:18:50 28 4
gpt4 key购买 nike

我正在寻找一个主要来源(或一个非常好的解释)来支持在为 iPhone 编写软件时使用 autorelease 是危险的或过于昂贵的说法。

许多开发者都提出了这种说法,我什至听说 Apple 不推荐它,但我无法找到任何具体的来源来支持它。

SO 引用:
autorelease-iphone
Why does this create a memory leak (iPhone)?

注意:我可以看出,从概念的角度来看,autorelease 比简单调用 release 稍微昂贵一些,但我不认为小的惩罚足以让 Apple 反对它。

什么是真实的故事?

最佳答案

(不能接受自己的回答?)

好吧,毕竟,我确实设法从 Apple Developer 找到了一个引用,添加为页面底部附近的旁注:

iPhone OS Note: Because on iPhone OS an application executes in a more memory-constrained environment, the use of autorelease pools is discouraged in methods or blocks of code (for example, loops) where an application creates many objects. Instead, you should explicitly release objects whenever possible.

不过,这仍然建议谨慎使用自动释放,而不是完全避免它。

(现在是我的评论)

听起来维护池有一定的开销。我读了this article这可能会导致我尽可能避免自动释放,因为我更喜欢保持一致。如果您有一些内存处于自动释放状态而其他内存完全由手动管理,则可能会更加困惑。

关于iphone - 为什么自动释放对于 iPhone 应用程序特别危险/昂贵?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/613583/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com