Ios NSURLConnection与sendAsynchronousRequest一起使用时的延迟响应

Ios NSURLConnection与sendAsynchronousRequest一起使用时的延迟响应,ios,ios5,nsurlconnection,nsurl,Ios,Ios5,Nsurlconnection,Nsurl,如果我错了,请纠正我。请放轻松点。我不是iOS方面的专家 我尝试用两种方法发送HTTP请求 一, 响应非常快,获得响应的时间延迟是恒定的。另一项工作是使用委托机制处理响应数据 因此,我与2接近 二, 使用2方法,我可以看到获得响应的延迟不一致 我的理解 由于我在NSOperationQueue中对块进行排队,因此不能保证立即执行 如果我的理解是正确的,那么什么是正确的方法,以便立即处理排队操作 如果您想要立即处理某些事情,您需要在主线程上执行。任何在后台异步运行的东西都不会是即时的。它的完成时间

如果我错了,请纠正我。请放轻松点。我不是iOS方面的专家

我尝试用两种方法发送HTTP请求

一,

响应非常快,获得响应的时间延迟是恒定的。另一项工作是使用委托机制处理响应数据

因此,我与2接近

二,

使用2方法,我可以看到获得响应的延迟不一致

我的理解

由于我在NSOperationQueue中对块进行排队,因此不能保证立即执行


如果我的理解是正确的,那么什么是正确的方法,以便立即处理排队操作

如果您想要立即处理某些事情,您需要在主线程上执行。任何在后台异步运行的东西都不会是即时的。它的完成时间将取决于主线程的工作负载和其他已设置为运行的后台任务。这是否意味着在主线程上运行NSURLConnection with InitwithRequest?如果我理解它是异步运行的,那么请求正确吗?如果我错了,请纠正我?我在NSURLConnection上使用了一个默认为后台的类。我不能单独与NSURLConnection类对话。不,这并不意味着initWithRequest在主线程上运行-这两种方法都在后台线程上执行下载任务,所以我不知道为什么其中一种会比另一种慢。
NSURLConnection *theConnection = [[NSURLConnection  alloc] initWithRequest:theRequest delegate:self];
  [NSURLConnection sendAsynchronousRequest:theRequest
                   queue:[NSOperationQueue mainQueue] 
                   completionHandler:^(NSURLResponse *response, NSData *data, NSError *error){
                          NSString *strData = [[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding];

                          NSLog (@" THE RESPONSE DATA IS %@", strData);
                               UIAlertView *alView = [[UIAlertView alloc] initWithTitle:@"Process Done" message:@"MY Message" delegate:nil cancelButtonTitle:@"Cancel" otherButtonTitles:@"OK", nil];
                               [alView show];
                               NSMutableData *mData = [NSMutableData dataWithData:data];
                               [self parseXML:mData]; // XML Parsing.

                           }];