NetConnector是自定义的一个类,该类使用代理的方法实现异步下载特定url页面的内容。

HyNetConnector.h

//
//  HyNetConnector.h
//  HyNetConnector
//
//  Created by kinds on 15/7/1.
//  Copyright (c) 2015年 hopy. All rights reserved.
//

#import <Foundation/Foundation.h>

@interface HyNetConnector : NSObject
@property NSURLConnection *conn;
@property (readonly) BOOL is_finished;
@end

HyNetConnector.m

//
//  HyNetConnector.m
//  HyNetConnector
//
//  Created by kinds on 15/7/1.
//  Copyright (c) 2015年 hopy. All rights reserved.
//

#import "HyNetConnector.h"

@implementation HyNetConnector
-(id)init{
    if(self = [super init]){
        NSURL *url = [NSURL URLWithString:@"http://www.baidu.com"];
        NSURLRequest *req = [NSURLRequest requestWithURL:url];
        _is_finished = false;
        _conn = [[NSURLConnection alloc] initWithRequest:req delegate:self
                                        startImmediately:YES];
    }
    return self;
}

-(void)connectionDidFinishLoading:(NSURLConnection *)connection{
    NSLog(@"%s:finish loading!",__func__);
    _is_finished = true;
}

-(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data{
    //NSLog(@"%s:recv %@(%lu)",__func__,data,data.length);
    NSLog(@"%s:recv len %lu",__func__,data.length);
}
@end

main.m

//
//  main.m
//  HyNetConnector
//
//  Created by kinds on 15/7/1.
//  Copyright (c) 2015年 hopy. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "HyNetConnector.h"

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        HyNetConnector *nc = [HyNetConnector new];
        NSLog(@"%@",nc);

        while(!nc.is_finished){
            NSDate *date = [NSDate dateWithTimeIntervalSinceNow:.5];
            [[NSRunLoop currentRunLoop]runUntilDate:date];
        }
        NSLog(@"It's over...");
    }
    return 0;
}

最新文章

  1. POJ #2448 A New Operating System
  2. BZOJ3542:DZY Loves March
  3. 简单的cc攻击防御
  4. 【转】Bresenham快速画直线算法
  5. Maven发布web项目到tomcat
  6. ubuntu环境变量添加变量
  7. POJ2739 - Sum of Consecutive Prime Numbers(素数问题)
  8. javascript每日一练(十三)——运动实例
  9. sql优化方式-转载
  10. iOS上传代码到Github平台
  11. poj1847 Tram 最短路Dijkstra
  12. react native android6+拍照闪退或重启的解决方案
  13. UseCase事件流描述规范
  14. gawk编程语言
  15. Photoshop调出田园照片唯美手绘油画效果
  16. qt delete
  17. 【转载】常用精品API接口汇总
  18. ContOS7切换国内源
  19. 【转载】论文笔记系列-Tree-CNN: A Deep Convolutional Neural Network for Lifelong Learning
  20. 基于【CentOS-7+ Ambari 2.7.0 + HDP 3.0】搭建HAWQ数据仓库——操作系统配置,安装必备软件

热门文章

  1. JSP简单隔行变色和日期格式化
  2. 会声会影小成果分享(那段青春岁月)——校学习部宣传视频制作&amp;生日祝福
  3. Ext JS 6开发实例(二) :使用CMD创建应用程序
  4. 【java线程系列】java线程系列之java线程池详解
  5. SSH深度历险(十一) AOP原理及相关概念学习+xml配置实例(对比注解方式的优缺点)
  6. SSH深度历险(三) EJB Session Bean有状态和无状态的区别与联系
  7. Dynamics CRM 2013 Homepage Ribbon 按钮引用多个Javascript资源
  8. Android的TabHost组件-android的学习之旅(四十)
  9. J2EE进阶(七)利用SSH框架根据数据表建立model类
  10. 【一天一道LeetCode】#232. Implement Queue using Stacks