iOS 08-线程通信
来源:互联网 发布:淘宝sop搜索 编辑:程序博客网 时间:2024/06/01 19:26
#import "ViewController.h"
#define IMAGE_URL @"https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1505384144967&di=c99009f5c44b8bca603bd3aef02726d5&imgtype=0&src=http%3A%2F%2Ftupian.enterdesk.com%2Fuploadfile%2F2012%2F1011%2F20121011092237493.jpg"
@interface ViewController ()
@property (weak,nonatomic) IBOutletUIImageView *imageView;
@end
@implementation ViewController
- (void)viewDidLoad {
[superviewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}
- (void)didReceiveMemoryWarning {
[superdidReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
-(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {
[NSThreaddetachNewThreadSelector:@selector(downLoadImage)toTarget:selfwithObject:nil];
}
-(void)downLoadImage {
NSURL *url = [NSURLURLWithString:IMAGE_URL];
NSData *data = [NSDatadataWithContentsOfURL:url];
UIImage *image = [UIImageimageWithData:data];
//一、线程通信由子线程回归到主线程
// [selfperformSelectorOnMainThread:@selector(loadImage:)withObject:image waitUntilDone:NO];
//二、第二种方式
// [selfperformSelector:@selector(loadImage:)onThread:[NSThreadmainThread] withObject:imagewaitUntilDone:NO];
//三、第三种方式
[self.imageViewperformSelectorOnMainThread:@selector(setImage:)withObject:image waitUntilDone:NO];
NSLog(@"waitUntilDone:NO时才会先执行");
}
-(void)loadImage:(id)obj {
self.imageView.image = obj;
}
@end
运行效果:
- iOS 08-线程通信
- iOS线程间通信
- iOS线程通信
- IOS线程间通信
- iOS线程间通信
- iOS线程通信
- iOS之线程间通信
- iOS之线程间通信
- iOS之线程间通信
- iOS之线程间通信
- iOS开发中线程通信
- ios线程-创建及通信
- 线程间的通信 iOS
- iOS之线程间通信
- iOS基础:线程4-线程通信
- GCD、线程间通信、Runloop - iOS开发
- iOS开发多线程-线程间的通信
- iOS--多线程GCD线程间通信--07
- do while和while的区别
- LVS 四种工作模式原理、优缺点比较及简单配置
- X5页面传参
- 设计模式-观察者模式
- 什么是自媒体淘客,自媒体淘客怎么赚钱
- iOS 08-线程通信
- 上传图片,实现图片预览
- poj 1743 不可重叠最长重复子串
- Struts(8)——OGNL与Struts结合的原理
- scrollTop回到顶部总结
- powerswsigner导入excel
- redis + centos 安装、启动
- Hibernate 入门案例(数据库链接,错误查看,已连数据库但不能自动创建表)
- MySQL:SQLyog的快捷键