我正在做一个应用程序,它通过请求将信息下载到网站,给我回复和HTML并解析这些数据,我获得了我的应用信息。为了下载我正在使用的数据,使用一个url,其中包含最终请求所需的所有参数。
NSData *data = [NSData dataWithContentsOfURL:url];
NSString* htmlString;
htmlString = [[NSString alloc] initWithData:data encoding:NSASCIIStringEncoding];
[self parserHTML:htmlString]; // here I fill a NSArray with the info parsed
[self searchSomething:htmlString]; // continue filling the NSArray
...
下载数据和解析HTML的任务需要很长时间。
我可以做些什么来加快速度?大中央派遣?如果是这样,我怎么能使用它,因为我使用它并且它不起作用,因为NSSArray是空的:
dispatch_queue_t downloadQueue = dispatch_queue_create("pharmacy downloader", NULL);
dispatch_async(downloadQueue, ^{
NSData *data = [NSData dataWithContentsOfURL:urlReal];
NSString* htmlString;
htmlString = [[NSString alloc] initWithData:data encoding:NSASCIIStringEncoding];
[self parserHTML:htmlString]; // here I fill a NSArray with the info parsed
[self searchSomething:htmlString]; // continue filling the NSArray
});
dispatch_release(downloadQueue);
如果我不使用GCD,它可以工作。可能是什么问题??
感谢您的帮助。我完全失去了! :S