Xcode - 为NSURL创建超时

时间:2014-10-03 13:15:54

标签: mysql ios nsurl

我使用NSURL从MySQL数据库加载一些东西。有时这非常慢,应用程序停止运行,因为数据库没有回答。 我以为我可以暂停,所以在例如3秒后,应用停止加载NSURL并再次尝试或执行UIAlertView之类的其他操作。

请帮帮我! 雅尼

PS:我使用此代码从数据库加载这些东西:

-(void) loadSomething {
   NSError *error;
   NSString *urlString = @"http://someip/App/somefile.txt";
   NSURL *url = [NSURL URLWithString:urlString];

   @try {
      NSString *resultString = [NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:&error];

   }
   @catch (NSException *exception) {

      NSLog(@"Error");

   }

1 个答案:

答案 0 :(得分:0)

您的请求是synchronous request,此类请求冻结了ui,您应该使用asynchronous request来阻止冻结。 这是一个tutorial请求asynch / synch,它可以帮助你。

否则或许可以考虑使用框架" AFNETWorking"它极大地简化了NSURLConnection和NSURLRequest的使用