【发布时间】:2013-09-11 17:53:03
【问题描述】:
(有人请编辑标题,显然我还不太会行话)
所以,假设我有一个名为 DataRequester 的对象,它的工作是创建一个 NSURLConnection 并成为它的代表。我从我的根视图控制器实例化对象,并提供一个回调块(这是DataRequester 的属性)。当NSURLConnection 完成加载后,我调用回调并将NSData 作为参数传入。
现在,在定义完成块的根视图控制器中,我想将NSData 存储在根视图控制器的属性NSData (strong,nonatomic) *responseData 中。我的问题是,在回调中我应该使用
weakSelf.responseData = [NSData dataWithData:passedInData];
或者我可以简单地使用:
weakSelf.responseData = passedInData;
(其中RootViewController * __weak weakSelf = self) 项目也使用ARC。
对正确答案的简要解释将不胜感激,并帮助我了解内存是如何管理的(我已经阅读了大量内容,但一个实际的示例/解释对我来说有很长的路要走)。
【问题讨论】:
-
我通过了澄清标题,@JoshDG;你怎么看?
-
完美。我很感激 :) 我认为这是一个重要的问题,人们可能会在没有意识到的情况下挣扎。希望现在可以找到它!
标签: ios objective-c cocoa-touch properties automatic-ref-counting