当我弹出我的viewcontroller
,在它的viewWillDisappear
方法中,我将viewcontroller
的数据本地化为,并且将本地化完成,然后系统销毁viewcontroller
?弹出一个具有asnyc任务的viewController,它会在iOS的任务完成之前破坏它吗?
- (void)viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];
// localization method
[self localDataToSandbox];
}
- (void)localDataToSandbox {
if (self.buyDataSource.count > 0) {
NSMutableArray *arr_tmp;
if (self.buyDataSource.count > 20) {
arr_tmp = [[self.buyDataSource subarrayWithRange:NSMakeRange(0, 20)] mutableCopy];
}else {
arr_tmp = self.buyDataSource;
}
CacheManager *manager = [CacheManager sharedManager];
[manager cacheModelArray:arr_tmp toPath:[Util getTmpDirectory] withName:buy_cache];
}
}
UPDATE
我们知道,如果vc1
推vc2
,并vc2
流行到vc1
,该vc2
将被系统回收。
我的问题是如果当vc2
弹出到vc1
,请问viewWillDisappear
中的方法会中断吗?
...?我不明白这个问题 – ullstrm
这取决于'self'是否被任务捕获。由于您没有显示代码,我们无法回答。 – Avi
@Avi我已经更新了我的问题,你的意思是如果方法捕获了“self”,它不会被销毁? – aircraft