这个 block 是否会导致内存泄漏问题,因为我没有使用弱化销售:
[KNApi getCouponsWithSearchString:self.searchString withCouponsCount:self.coupons.count withSuccess:^(id object) {
[self.coupons addObjectsFromArray:object[@"items"]];
[self.hud hide:YES];
[self.theTableView setHidden:NO];
[self.theTableView reloadData];
} withFailure:^(id object) {
[self hideLoadingIndicatorWithError:object];
}];
例如,我知道如果我们将 [KNApi getCouponsWithSearchString...
作为自身类中的 block 属性,则会导致问题。
所以假设我们的堆栈将被销毁,我将在此之前获得成功的调用。它会导致请求本身出现问题吗?
最佳答案
这取决于。 KNApi 是否保留 block ? self 保留 KNApi 吗? block 的作用是它强烈地保留 self 。它与任何其他保留没有什么不同。只要您确定该 block 正在发生什么,您就不必微弱地保留 self 。
关于ios - 我是否应该在每次使用 block 时削弱自己,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29773320/