虽然网络请求需要时间加载,但我设置了一个while循环来等待数据。在完成网络请求之前,变量myData为nil。代码是这样的:
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
while (![[DataStore sharedInstance]myData]) {
NSLog(@"still wating...");
}
_dataArray = [[DataStore sharedInstance]myData];
[_tableView reloadData];
});
因此我建立了一个无限等待数据加载的队列。完成后,队列最终可以继续下一个顺序:重新加载tableView。
保持队列的代码是不是很好?它会对cpu资源造成巨大浪费吗?