GCD的队列可以分为2大类型,分别为串行队列和并发队列
串行队列(Serial Dispatch Queue):
一次只调度一个任务,队列中的任务一个接着一个地执行(一个任务执行完毕后,再执行下一个任务)
创建一个队列
dispatch_queue_t q = dispatch_queue_create(const char *label, disp...
分类:
移动开发 时间:
2015-03-19 22:00:57
阅读次数:
233
本文是对以往学习的多线程中知识点的一个整理。多线程中的队列有:串行队列,并发队列,全局队列,主队列。执行的方法有:同步执行和异步执行。那么两两一组合会有哪些注意事项呢?如果不是在董铂然博客园看到这边文章请点击查看原文提到多线程,也就是四种,pthread,NSthread,GCD,NSOperati...
分类:
移动开发 时间:
2015-02-22 13:20:46
阅读次数:
164
Synthesize[snθsaz]合成Concurrent并行[英][knkrnt]serial[英][sril]串行detach[英][dtt]脱离selector[英][slekt(r)]选择器perform[英][pf:m]执行同步synchronized[英][‘skrnazd]atomic[英][tmk]原子并发队列(ConcurrentDispatchQueue)串行队列(SerialDispatchQueue)forbi..
分类:
移动开发 时间:
2015-02-13 11:46:34
阅读次数:
139
dispatch_group如果想在dispatch_queue中所有的任务执行完成后在做某种操作,在串行队列中,可以把该操作放到最后一个任务执行完成后继续,但是在并行队列中怎么做呢。这就有dispatch_group 成组操作。比如复制代码 dispatch_queue_t dispatchQueue = dispatch_queue_create("ted.queue.next", DISPA...
分类:
其他好文 时间:
2015-01-04 17:22:11
阅读次数:
348
概要
GCD的全称是Grand Central Dispatch(译为中心调度队列?),可以理解为线程管理队列,是苹果公司为多核的并行运算提出的解决方案,能够根据系统环境自适应线程管理,基本属于全自动的线程管理。
在GCD里面,任务需要放到队列里面执行,队列根据自身属性分发任务执行,不过原则总是FIFO。队列分为串行和并行队列,串行队列是队列里面只有一个线程,所以队...
分类:
移动开发 时间:
2015-01-01 16:07:14
阅读次数:
191
进程:正在进行中的程序被称为进程,负责程序运行的内存分配;每一个进程都有自己独立的虚拟内存空间线程:线程是进程中一个独立的执行路径(控制单元);一个进程中至少包含一条线程,即主线程队列dispatch_queue_t,队列名称在调试时辅助,无论什么队列和任务,线程的创建和回收不需要程序员操作,有队列...
分类:
移动开发 时间:
2014-12-31 21:26:56
阅读次数:
335
本篇文章会持续更新:
我们经常用到的:
dispatch_async(dispatch_get_global_queue(0, 0), ^{
// 处理耗时操作的代码块
//通知主线程刷新
dispatch_async(dispatch_get_main_queue(), ^{
//回调或者说是通知主线程刷新
});
}...
分类:
移动开发 时间:
2014-12-30 15:20:15
阅读次数:
143
-并发队列,开多个线程,并发的效率高! 好处:快,用户交互好! 坏处:"费电",如果用户在wifi环境!-串行队列,开一个线程,效率不高 好处:省电,有的时候,用户不希望太快!3G-省钱 坏处:慢,效率不高!网络框架,需要考虑用户的网络环境!针对用户的网络环境有选择的决定开辟线程的数量!线程...
分类:
其他好文 时间:
2014-12-24 17:51:42
阅读次数:
162
队列分为串行队列,并发队列,全局队列和主队列;串行队列:一次只能安排一个任务。dispatch_queue_t q = dispatch_queue_create("itcast",DISPATCH_QUEUE_SERIA);DISPATCH_QUEUE_SERIAL==NULL;并发队列:一次可安...
分类:
其他好文 时间:
2014-12-24 17:51:07
阅读次数:
151
iOS多线程技术—GCD的用法一、主队列介绍主队列:是和主线程相关联的队列,主队列是GCD自带的一种特殊的串行队列,放在主队列中得任务,都会放到主线程中执行。提示:如果把任务放到主队列中进行处理,那么不论处理函数是异步的还是同步的都不会开启新的线程。获取主队列的方式: 1 // 2 // YYVi....
分类:
移动开发 时间:
2014-12-11 12:05:57
阅读次数:
268