多线程学习10-GCD的线程间通信

来源:互联网 发布:学java的网站 木 编辑:程序博客网 时间:2024/05/13 01:56

学习多线程10(之前跟着小码哥视频学习了多线程,准备把学到的东西放到网上,便于参考。仅有视频,所以所有文字都是自己打的,同时也温习一下多线程)

GCD的线程间通信,简单事例(下载图片)。

#import "ViewController.h"@interface ViewController ()@property (weak, nonatomic) IBOutlet UIImageView *imageView;- (IBAction)downBtnClick:(UIButton *)sender;@end@implementation ViewController- (void)viewDidLoad {    [super viewDidLoad];    }/** 下载按钮点击事件 */- (IBAction)downBtnClick:(UIButton *)sender {    dispatch_async(dispatch_get_global_queue(0, 0), ^{        //图片的网络路径        NSURL *url = [NSURL URLWithString:@"http://img.pusa123.com/www/uploads/allimg/160315/17592_160315095042_1.jpg"];        //加载图片        NSData *data = [NSData dataWithContentsOfURL:url];        //生成图片        UIImage *image = [UIImage imageWithData:data];                //回到主线程,刷新UI,显示图片。        dispatch_async(dispatch_get_main_queue(), ^{            [self.imageView setImage:image];        });    });    }


0 0