当我在 self 保留的块中调用 self 上的任何内容时,我通常会收到警告:
[self.someView doSomething:^{
self.aVar = @"Hello!";
}];
我要做:
__weak SomeObject *weakSelf = self;
[self.someView doSomething:^{
weakSelf.aVar = @"Hello!";
}];
但是,如果我在weakSelf 上调用一个方法,并且该方法使用self,即使我没有收到警告,这是否会导致保留周期?我说的是这个:
__weak SomeObject *weakSelf = self;
[self.someView doSomething:^{
weakSelf.aVar = @"Hello!";
[weakSelf aMethod];
}];
和 aMethod 使用self