如果可能的话,我正在寻找一种更好的方法来做到这一点。
我有一个更新本地 sqlite 数据库的异步回调。更新完成时,我在单例变量 (archiveUpdateComplete) 中设置了一个标志。我睡一会儿,直到标志设置为真,然后我为我的表格视图补充水分。想删除 sleep()!感谢您的任何建议。
#define kBgQueue dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0)
- (void)viewDidLoad
{
dispatch_async(kBgQueue, ^{
//Hydrate word archive table view
do {
sleep(1.0);
} while ([sharedManager archiveUpdateComplete]==NO);
[self performSelectorOnMainThread:@selector(hydrateWordArchive) withObject:nil waitUntilDone:YES];
//Run custom activity indicator
dispatch_async(dispatch_get_main_queue(), ^{
[MBProgressHUD hideHUDForView:self.view animated:YES];
});
});
}