全局队列
//全局队列
-(void)gcdDemo7{
//全局队列
/*
参数1:涉及到系统适配;
iOS 8:服务质量
QOS_CLASS_USER_INTERATCTIVE 用户交互(比较高)
QOS_CLASS_USER_INITIATED 用户需要(不要使用耗时操作)
QOS_CLASS_DEFAULT 默认(给系统重置队列)
QOS_CLASS_UTILITY 使用工具(用了做耗时操作)
QOS_CLASS_BACKGROUND 后台执行
QOS_CLASS_UNSPECIFIED 没有指定优先级 0
iOS 7:调度优先级
DISPATCH_QUEUE_PRIORITY_HIGH 2 高
DISPATCH_QUEUE_PRIORITY_DEFAULT 0 默认
DISPATCH_QUEUE_PRIORITY_LOW -2 低
DISPATCH_QUEUE_PRIORITY_BACKGROUND INT16_MIN 2 后台优先级
在工作中,一般还是没有淘汰iOS 7;
提示:尤其不要现在background,不管是优先级还是服务质量,线程的执行慢到令人发指!
参数2:这是为未来使用的一个保留,现在始终为0;
*/
dispatch_queue_t q = dispatch_get_global_queue(0,0);
//循环添加10个任务,进入全局队列中
for(int i = 0;i < 10;i++)
{
dispatch_async(q,^{
NSLog(@"%@,%d",[NSThread currentThread],i);
});
}
NSLog(@"come here");
}
- 全局队列(本质上并发队列)
全局队列参数分析
参数1:涉及到系统适配;
iOS 8:服务质量
QOS_CLASS_USER_INTERATCTIVE
用户交互(比较高)
QOS_CLASS_USER_INITIATED
用户需要(不要使用耗时操作)
QOS_CLASS_DEFAULT
默认(给系统重置队列)
QOS_CLASS_UTILITY
使用工具(用了做耗时操作)
QOS_CLASS_BACKGROUND
后台执行
QOS_CLASS_UNSPECIFIED
没有指定优先级 0iOS 7:调度优先级
DISPATCH_QUEUE_PRIORITY_HIGH
2 高
DISPATCH_QUEUE_PRIORITY_DEFAULT
0 默认
DISPATCH_QUEUE_PRIORITY_LOW
-2 低
DISPATCH_QUEUE_PRIORITY_BACKGROUND
INT16_MIN 2 后台优先级在工作中,一般还是没有淘汰iOS 7;
提示:尤其不要现在background
,不管是优先级还是服务质量,线程的执行慢到令人发指!
参数2:这是为未来使用的一个保留,现在始终未0;
网友评论