关于NSOperationQueue多线程的学习


    开启多线程队列

    NSInvocationOperation *operation = [[NSInvocationOperation alloc] initWithTarget:self

                                                                        selector:@selector(getJson)object:nil];

    NSOperationQueue *queue = [[NSOperationQueue alloc]init];

    

    [queue addOperation:operation];




-(void)getJson{

    

    NSError *error;

    NSURLRequest *request = [NSURLRequest requestWithURL:

                             [NSURL URLWithString:@"http://m.weather.com.cn/data/101180601.html"]];

    

    NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];

    

    NSDictionary *weather = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves error:&error];

    

    NSDictionary *weatherINfo = [weather objectForKey:@"weatherinfo"];

    

    NSString *week = [NSString stringWithFormat:@"%@",[weatherINfo objectForKey:@"week"]];

    // 线程间通信(这个很重要,如果没有线程间通信,页面显示的数据就会比页面加载慢了很多,至于原理我还没空去研究)

    [self performSelectorOnMainThread:@selector(getLabelValue:) withObject:week waitUntilDone:NO];

    

//    NSLog(@"%@",week);

}


-(void)getLabelValue:(NSString*)lable{

    self.textView.text = lable;

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值