一,什么是GCD GCD是异步执行任务的技术之一,一般将应用程序中记述的线程管理用的代码在系统级中实现。开发者只需要定义想执行的任务并追加到适当的dispatch queue中,GCD就能生成必要的线程并计划执行任务。由于线程管理师作为系统的一部分来实现的,因此可统一管理,也可执行任务,这样就比以....
分类:
移动开发 时间:
2014-08-20 12:29:42
阅读次数:
169
第一、dispatch_queue_create 用于创建用户线程队列。可以创建Serial Dispatch Queue 和Concurrent Dispatch Queue两种队列,Serial Dispatch Queue是等待现在正在执行的Queue,即串行执行
Concurrent Dispatch Queue不等待现在正在执行中的Queue,即并行队列
1、创建Serial Dis...
分类:
其他好文 时间:
2014-08-19 14:34:34
阅读次数:
164
//异步下载图片dispatch_queue_tqueue =dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0);dispatch_group_tgroup =dispatch_group_create();dispatch_gr...
分类:
移动开发 时间:
2014-08-19 14:13:24
阅读次数:
719
在多线程的编程环境中,锁的使用必不可少! 于是,今天来总结一下为共享资源加锁的操作方法。 一、使用synchronized方式 ????//线程1 ????dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRI...
分类:
编程语言 时间:
2014-08-18 18:58:33
阅读次数:
276
//GCD 的使用方式
dispatch_async(dispatch_queue_t queue, dispatch_block_t block);
async表明运行方式
queue则是你把任务交给那个线程队列来处理
block代表的是你要做的事情
//线程运行方式
dispatch_async 异步执行
dispatch_sync 同步执行
dispatch_delay 延迟执行
......
分类:
移动开发 时间:
2014-08-16 15:07:30
阅读次数:
274
dispatch_semaphore 信号量基于计数器的一种多线程同步机制。在多个线程访问共有资源时候,会因为多线程的特性而引发数据出错的问题。dispatch_queue_tqueue =dispatch_get_global_queue(0,0); dispatch_semaphore_tsem...
分类:
其他好文 时间:
2014-08-13 18:32:16
阅读次数:
200
1.Serial Dispatch Queue 串行队列,每次只能执行一个线程,线程采用先进先出的执行顺序。各个队列之间并行处理,也即每个队列对应一个系统线程,所以要注意不能过多生成Serial Dispatch Queue。2.Concurrent Dispatch Queue 并行队列,由X.....
分类:
编程语言 时间:
2014-08-12 16:25:24
阅读次数:
261
Grand Central Dispatch (GCD)是Apple开发的一个多核编程的解决方法。dispatch queue分成以下三种:1)运行在主线程的Main queue,通过dispatch_get_main_queue获取。/*!* @function dispatch_get_main...
分类:
移动开发 时间:
2014-08-08 01:34:35
阅读次数:
351
GCD概念:Grand Central Dispatch1.queue 队列 dispatch queue 分发队列2.task 任务3.thread 线程task 是一个一个单独的任务(方法,函数,block)queue里存放的是一个或者多个taskthread 为了保证task能顺利执行,que...
分类:
移动开发 时间:
2014-08-07 12:10:30
阅读次数:
318
// 按钮点击事件-(void)startTime{ __block int timeout=30; //倒计时时间 dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0); dis...
分类:
其他好文 时间:
2014-08-06 14:12:31
阅读次数:
216