【问题标题】:Some doubts about memory management in ios applicato?ios applicato中内存管理的一些疑惑?
【发布时间】:2012-02-09 08:49:10
【问题描述】:
  1. ios应用中保留NSObject有什么需要?

  2. retainCount==1,retainCount=2,.....等有什么区别?

  3. 属性如何处理保留和释放实例变量?

【问题讨论】:

    标签: objective-c memory-management memory-leaks retain retaincount


    【解决方案1】:
    1. 您需要保留一个对象,以便在您使用它时它不会被释放。
    2. 保留计数越高,向对象发送保留消息的次数就越多。
    3. 如果您正确声明该属性,则为其赋值将正确处理该实例变量的内存管理。这可能意味着为对象类型正确调用 retainrelease

    听起来您确实需要阅读一些文档。也许特别是Memory Management Programming Guide

    【讨论】:

    • 如果不介意你能详细说明一下,保留计数越高,保留消息被发送到对象的次数就越多。
    • 您有更具体的问题吗?每写一次[object retain],retain 计数就加一。一般来说,保留计数的具体值不是您在编写程序时需要知道甚至关心的。
    • 昨天看了这个文档,如果一个NSObject保持count=1,2..,他们的内存有什么变化吗?
    • 嗯,保留计数变量会改变...我确定我理解你的问题。
    • 我是这个领域的新手,如果我的问题中有任何错误,我会请求原谅。当我保留/释放 NSObject 时,保留计数创建/减少 1,内存中究竟发生了什么?
    猜你喜欢
    • 2012-03-04
    • 2012-08-20
    • 1970-01-01
    • 1970-01-01
    • 2022-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多