在很多问题中,都会询问是否可以在blocks中使用self。答案是否定的,避免保留循环。
现在,当我在我的块中使用“ivar”时UIViewController
应该没问题。但是当我使用:
- (void)viewDidLoad
{
[_customCell setChangedValueBlock:^{
if(_object != nil){
NSLog(@"This is a sample");
}
}];
}
该dealloc
方法从未调用过:
-(void)dealloc{
NSLog(@"Dealloc");
}
当我删除if(_object != nil){
,该dealloc
方法被调用。
_object
在将它传递给块之前我应该对它进行弱引用吗?