我需要在兩個塊來執行相同的一串代碼(我使用ARC)自:使用方法裏面塊
__weak typeof(self) weakSelf = self;
[_dataProvider doA:^(NSError *error) {
[weakSelf handleError:error];
}];
而且在不同的地方,我呼籲:
__weak typeof(self) weakSelf = self;
[_dataProvider doB:^(NSError *error) {
[weakSelf handleError:error];
}];
然後我有我的處理程序:
- (void)handleError:(NSError *)error {
[self.refreshControl endRefreshing];
[self.tableView reloadData];
}
難道這樣使用它嗎?請注意0方法裏面使用self
。如果沒有,那麼這裏有什麼合適的方法?順便說一句:self是一個viewController,可以處理(doB:和doA:塊基於網絡,所以可能會很慢)。
你是怎麼說_is可以安全使用_?它不會吹你的設備...所以,是的,在這個觀點是安全的。 – holex
它不是「完全」安全的,請參閱我的答案。 – samir