(有人请编辑标题,显然我对术语不太了解)
所以,假设我有一个名为的对象DataRequester
,它的工作是创建一个NSURLConnection
并成为它的代表。我从我的根视图控制器实例化对象,并且还提供了一个回调块(它是 的一个属性DataRequester
)。完成NSURLConnection
加载后,我调用回调并NSData
作为参数传入。
现在,在定义完成块的根视图控制器中,我想将其存储在根视图控制器NSData
的属性中。NSData (strong,nonatomic) *responseData
我的问题是,在回调中我应该使用
weakSelf.responseData = [NSData dataWithData:passedInData];
或者我可以简单地使用:
weakSelf.responseData = passedInData;
(RootViewController * __weak weakSelf = self)
该项目还使用ARC。
对正确答案的简要解释将不胜感激,并帮助我了解内存是如何管理的(我已经阅读了大量内容,但一个实际的示例/解释对我来说有很长的路要走)。