GCD的队列可以分为2大类型,分别为串行队列和并发队列
串行队列(Serial Dispatch Queue):
一次只调度一个任务,队列中的任务一个接着一个地执行(一个任务执行完毕后,再执行下一个任务)
创建一个队列
dispatch_queue_t q = dispatch_queue_create(const char *label, disp...
分类:
移动开发 时间:
2015-03-19 22:00:57
阅读次数:
233
/1.数据获取下载(特别是大数据)最好放在global_queue中操作dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ });//2.UI更新放在main_queue中更新(不管当前线....
分类:
移动开发 时间:
2015-03-18 12:08:18
阅读次数:
135
GCD是Grand Central Dispatch的简称,它是基于语言的,用来解决多核并行运算。使用GCD,线程完全由系统进行管理,不需要再编写线程代码。GCD的核心是:将长期运行的任务拆分成多个工作单元,并将这些单元添加到dispatch queue中,系统会为我们管理这些dispatch qu...
分类:
移动开发 时间:
2015-03-16 16:12:48
阅读次数:
134
1,队列和任务1)任务:需要执行什么操作*用block来封装任务2)队列:存放任务*全局的并发队列:可以让任务并发执行dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);*自己创...
分类:
其他好文 时间:
2015-03-16 12:47:47
阅读次数:
189
3.2 GCD的API
苹果对GCD的说明:开发者要做的只是定义想执行的任务并追加到适当的Dispatch Queue中。
“Dispatch Queue”是执行处理的等待队列。通过dispatch_async函数等API,在Block语法中记述想执行的处理并追加到Dispatch Queue中,Dispatch Queue按照追加的顺序,执行处理。
Dispatch Queue分为...
分类:
移动开发 时间:
2015-03-13 10:55:08
阅读次数:
221
1 -(void)startTime{ 2 __block int timeout=30; //倒计时时间 3 dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0...
分类:
其他好文 时间:
2015-03-12 14:49:27
阅读次数:
129
dispatch_async( dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0) , ^{ NSString *cachPath = [NSSearchPathF...
分类:
移动开发 时间:
2015-03-11 22:54:08
阅读次数:
263
使用GCD处理多线程,在多核心CPU下,会提高执行效率,下面是一段在项目中使用的GCD代码。- (void)gcdDownload { static dispatch_once_t once; static dispatch_queue_t queue; //crea...
分类:
移动开发 时间:
2015-03-06 15:29:57
阅读次数:
148
一段清理缓存的代码如下:dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0), ^{ NSString*cachPath = [NSSearchPathForDirectoriesInD...
分类:
移动开发 时间:
2015-03-02 18:27:51
阅读次数:
135