多次调用sendAsynchronousRequest

时间:2014-04-10 09:40:23

标签: ios iphone ios6 nsoperationqueue sendasynchronousrequest

在ios 6中,我有一个调用sendAsynchronousRequest的图像下载方法。当图像数量太多时,永远不会调用完成块,并且有超过60个工作线程永远不会被销毁(因此图像下载永远不会完成)。在ios 7中它似乎工作正常。你是如何做到这一点的?代码如下

for(NSDictionary * imageDict in thumbnailJSONArray){
    NSString * thumbNailString = [imageDict objectForKey:JSON_URL];
    //other codes..
    [self downLoadThumbNails:numbertoAdd urlRequest:thumbNailString];

}
-(void)downLoadThumbNails:(NSUInteger) numberToAdd urlRequest:(NSString*)urlString {
    if(self.imageQueue == nil){
        self.imageQueue = [[NSOperationQueue alloc] init];
    }  

    [NSURLConnection sendAsynchronousRequest:urlRequest queue:self.imageQueue completionHandler:^(NSURLResponse *response, NSData* data, NSError *connectionError) {
    //image setting codes
    }];
}

- EDIT-- 更清楚的是,永远不会调用图像设置代码,因此永远不会设置下载的图像。

0 个答案:

没有答案