GCD 2种并发队列,2种串行对象的创建
2016-07-12 17:53
183 查看
1.串行队列
// i.获得主队列
dispatch_queue_t queue = dispatch_get_main_queue();
//
ii.自己创建的串行队列
//串行队列+异步线程。开辟一条新的线程。上面的任务依次执行
dispatch_queue_t queue=dispatch_queue_create("wangning", DISPATCH_QUEUE_SERIAL);
dispatch_queue_t queue2=dispatch_queue_create("wangning2", NULL);
2. 并发队列
dispatch_queue_t queue3=dispatch_queue_create("wangning", DISPATCH_QUEUE_CONCURRENT);
// 1.获得全局的并发队列
dispatch_queue_t queue =dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0)
#define DISPATCH_QUEUE_PRIORITY_HIGH 2
#define DISPATCH_QUEUE_PRIORITY_DEFAULT 0
#define DISPATCH_QUEUE_PRIORITY_LOW (-2)
#define DISPATCH_QUEUE_PRIORITY_BACKGROUND INT16_MIN
3.
异步函数用在主队列上不会开辟新的线程
;
// i.获得主队列
dispatch_queue_t queue = dispatch_get_main_queue();
//
ii.自己创建的串行队列
//串行队列+异步线程。开辟一条新的线程。上面的任务依次执行
dispatch_queue_t queue=dispatch_queue_create("wangning", DISPATCH_QUEUE_SERIAL);
dispatch_queue_t queue2=dispatch_queue_create("wangning2", NULL);
2. 并发队列
dispatch_queue_t queue3=dispatch_queue_create("wangning", DISPATCH_QUEUE_CONCURRENT);
// 1.获得全局的并发队列
dispatch_queue_t queue =dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0)
#define DISPATCH_QUEUE_PRIORITY_HIGH 2
#define DISPATCH_QUEUE_PRIORITY_DEFAULT 0
#define DISPATCH_QUEUE_PRIORITY_LOW (-2)
#define DISPATCH_QUEUE_PRIORITY_BACKGROUND INT16_MIN
3.
异步函数用在主队列上不会开辟新的线程
;
相关文章推荐
- Android5.0 强制打开GPS
- Qt5简单例子和中文乱码问题
- IOS Dev Intro - NSDictionary
- vue.js Class 与 Style
- [Linux] - Docker pure-ftp使用
- iOSFMDB和CoreData
- 装完Centos7提示Initial setup of CentOS Linux 7 (core)
- 不用加减乘除做加法
- Jsp语法
- iOS 富文本相关
- Android静态安全检测 -> Service组件暴露
- 简历的好坏
- Scala程序hello world
- V4L2 for developer
- mybatis一对多 多对一
- Spring MVC 参数字段校验
- Mac 卸载openfire
- Javascript表单特效之十大常用原理性样例代码大总结
- Ajax Zero to Hero (1) 入门
- Spring AOP的底层实现技术 Proxy InvocationHandler