iOS线程中的那些词
同步,不具备开启线程的能力:dispatch_sync
异步,具备开启线程的能力:dispatch_async
并列队列:多个任务可以同时执行
串行队列:一个任务执行完后,再执行下一个任务
一个金典的列子:
#define ZHGlobalQueue dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)
#define ZHMainQueue dispatch_get_main_queue()
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
dispatch_async(ZHGlobalQueue, ^{
// 1.子线程
NSString* urlStr = @"";
NSURL *url = [NSURL URLWithString:urlStr];
NSData *data = [NSData dataWithContentsOfURL:url];
UIImage *image = [UIImage imageWithData:data];
// 2.回主线程设置图片
dispatch_async(ZHMainQueue, ^{
[self.imageView setImage:image];
});
});
}
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。