gpt4 book ai didi

cocoa-touch - 有时保留循环可以吗?

转载 作者:行者123 更新时间:2023-12-03 16:31:41 24 4
gpt4 key购买 nike

假设我有一个对象,它应该在应用程序的整个生命周期中作为单例存在。该对象是否可以包含对 NSTimer 的强引用,并将其自身作为计时器的目标?这将是一个保留周期,但我没有看到任何缺点。当操作系统尝试释放内存时,无论如何都不需要调用 dealloc

最佳答案

听起来不错。您有一个单例对象,这意味着一旦创建,它将在应用程序的生命周期中持续存在。为了配合它,您还有一个计时器,该计时器也将在应用程序的生命周期内持续存在。因此,一旦您确保了它们的持久性(即它们都被保留),就无需管理内存了。它们的生命周期与应用程序的生命周期一样长,在这种情况下,这正是您想要的。正如您的问题所暗示的那样,故事中存在保留周期(由于 NSTimer 的特殊性)这一事实几乎是次要的。

关于cocoa-touch - 有时保留循环可以吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22736984/

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