objective-c单例内存释放

kpo*_*wer 5 iphone memory-leaks memory-management objective-c

如果没有使用垃圾收集器(iPhone环境),当我的应用程序终止时,我应该以某种方式释放共享对象(单身基于哪个)?

Pau*_*nch 12

当应用程序退出时,将释放其所有内存.因此,只要你在运行时不使用太多内存,那么释放对象真的无关紧要.

即使策略在4.0中发生变化,单个小对象也不会产生太大影响; 当它终止时,它仍将与应用程序的其余部分一起发布.

  • 我确定我读到某个地方,当一个应用程序知道它将要关闭时,它甚至不会打扰deallocs.无论如何,除非你依赖dealloc处理一些外部资源,否则没有必要发布单例.如果是这种情况,请重新设计您的类,以便您可以显式处置所述外部资源. (2认同)
  • 如果您需要在应用程序终止时执行某种清理,您可以让单例对象侦听`UIApplicationWillTerminateNotification` (2认同)