GCD即为Grand Central Dispatch的缩写
GSD在Mac OS X10.6中第一次推出,从iOS4.0后开始引入,GCD是一种很强大高效的技术,它可以处理诸如数据锁定或资源泄露的等复杂的异步编程问题
下面看看用法
声明一个队列
dispatch_queue_t queue = dispatch_queue_create("com.iphonedevblog.post",NULL);
第一个参数是标识队列的,第二个参数是定义队列的参数
执行一个队列
dispatch_async(queue, ^{[self dosomething]});
暂停一个队列
dispatch_suspend(queue);
恢复一个队列
dispatch_resume(queue);
注意:暂停与恢复在主线程上不起作用
返回主线程运行代码
dispatch_sync(dispatch_get_main_queue(),^{[self dismissLoginWindow;]});