我正在做一个应用程序,它通过对网站的请求下载信息,给我返回 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