码迷,mamicode.com
首页 > Web开发 > 详细

NSURLConnection

时间:2015-06-19 21:30:56      阅读:225      评论:0      收藏:0      [点我收藏+]

标签:

1.简单的网络请求可以用一个异步来实现

2.如果是复杂的网络请求,例如下载大量的数据并跟踪进度的话,这时就需要用到代理

3.如果在代理中开启的线程,则该线程不是在后台线程执行的,而是在主线程执行的

4.如果想要在后台线程执行,则需要用到GCD或NSOperation创建一个新的线程

5.为了保证代理的方法被监听到还要用到运行循环

  因为默认的子线程的RunLoop是没有开启循环的,所以需要手动开启,在适当的时候还需要关闭循环,在这里一旦网络断开,runLoop 会自动停止

 1 dispatch_async(dispatch_get_global_queue(0, 0), ^{
 2         
 3         NSString *urlString = @"http://localhost/01-Vim简单演练.mp4";
 4         urlString = [urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
 5 
 6         NSURL *url = [NSURL URLWithString:urlString];
 7         NSURLRequest *request = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestReloadIgnoringLocalCacheData timeoutInterval:15.0f];
 8 #warning 注意下面这句话放的位置
 9 //        [[NSRunLoop currentRunLoop] run];
10         [NSURLConnection connectionWithRequest:request delegate:self];
11         // 启动runloop 死循环,好启动,不好关闭!
12         // NSURLConnection 一旦网络断开,runLoop 会自动停止
13         [[NSRunLoop currentRunLoop] run];
14         NSLog(@"come here----%@",[NSThread currentThread]);
15         
16     });

 

 

 

NSURLConnection

标签:

原文地址:http://www.cnblogs.com/iosBike/p/4589747.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!