【问题标题】:NSObject retainCount not showing the proper valueNSObject retainCount 没有显示正确的值
【发布时间】:2012-11-29 13:24:40
【问题描述】:

我的财产如下

@property(strong,nonatomic)NSArray *dataArray;

我正在尝试按如下方式显示retainCount

- (void)viewDidLoad    
{        
         [super viewDidLoad];
       // Do any additional setup after loading the view, typically from a nib.

          self.dataArray=[NSArray new];

         NSLog(@"Retain Count1 %d",[dataArray retainCount]);

        [dataArray release];

        NSLog(@"Retain Count2 %d",[dataArray retainCount]);        
}

据我了解,Retain Count1Retain Count2 应该分别为 10。 p>

但是我得到了奇怪的值 2221 ,当我再次运行时,有时

保留计数将再次增加 1 。非常感谢任何帮助。

【问题讨论】:

  • 不建议使用retainCount。您将“永远”不会获得预期值。
  • @Raj 为什么你回滚我的编辑?您的原件不太容易理解
  • 另请注意,使用 ARC(您使用的是 strong,所以我假设您使用 ARC 进行编译),retainCount 甚至不应该是可访问的。
  • @giorashc: 抱歉是误会

标签: objective-c cocoa-touch retaincount


【解决方案1】:

永远不要使用retainCount 来跟踪对象的引用 因为该对象可能会在您不知情的情况下在内部保留,从而导致 retainCount 显示您认为不正确的结果。

site 将进一步帮助您:)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-09
    • 2018-07-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多