GCD收录2
来源:互联网 发布:软件行业的发展趋势 编辑:程序博客网 时间:2024/06/06 08:54
多线程(3) - iOS关于线程调度的三种方式之GCD
一, 队列的选择技巧
1,串行队列异步执行:开一条线程,顺序执行,效率不高,执行比较慢,资源占用小,省电。使用场合:一般网络是3g,对性能要求不高,
2,并发队列异步执行:开启多条线程,并发执行,效率高,消耗资源大,费电。使用场合:网络是WiFi,要求用户体验非常流畅。对任务的顺序没有要求。
3,同步任务的使用场合:一般只会在并发队列,需要阻塞后续的任务,必须等待同步任务执行完毕,然后再去执行。
二,GCD常见的应用拓展
1, 队列之间的通信:
dispatch_async(dispatch_get_global_queue(0, 0), ^{
NSURL * url = [NSURL URLWithString:@""];
NSData * data = [NSData dataWithContentsOfURL:url];
UIImage * image = [UIImage imageWithData:data];;
dispatch_async(dispatch_get_main_queue(), ^{
self.image.image = image;
});
});
2,延时操作:dispatch_after(延时多久,队列,操作)
3, 调度分组:应用场景,开发的时候有时候出现多个网络请求,都完成以后,在给用户一个通知,或者说刷新UI。但因为每个网络请求的执行时间不一定,这时候就可以使用调度调度分组了。
调度组可以跨队列通信。
- GCD收录2
- GCD收录1
- GCD收录3--dispatch_group线程调度组
- 经典语录收录(2)
- 收录
- GCD - 2
- 【原创】GCD编程 - 2
- iOS GCD详解2
- 2分钟学会GCD
- GCD多线程2
- GCD队列组2
- 多线程开发2 -GCD
- gcd
- GCD
- GCD
- GCD
- GCD
- GCD
- TCP协议中的三次握手和四次挥手
- 必看点
- c++ 学习memcpy 在各种情况下的使用
- [ Python ] python 从哪开始执行 之 main 函数
- hdu1540(线段树区间合并)
- GCD收录2
- volatile可见性的一些认识和论证
- android获取app版本信息
- ActiveMQ的Transport Connectors配置(六)
- 字符串处理函数
- ViewGroup getChildDrawingOrder与焦点Focus放大遮挡
- 关于《Java并发编程实战》 -- 第二部分的阅读笔记
- 前端er对一些PS常用技法的总结
- Android相关的一些技术文档记录