GCD 用法查询
2016-03-09 11:11
323 查看
// 后台执行: dispatch_async(dispatch_get_global_queue(0, 0), ^{ // something }); // 主线程执行: dispatch_async(dispatch_get_main_queue(), ^{ // something }); // 一次性执行: static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ // code to be executed once }); // 延迟2秒执行: double delayInSeconds = 2.0; dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, delayInSeconds * NSEC_PER_SEC); dispatch_after(popTime, dispatch_get_main_queue(), ^(void){ // code to be executed on the main queue after delay }); // 自定义dispatch_queue_t dispatch_queue_t urls_queue = dispatch_queue_create("blog.devtang.com", NULL); dispatch_async(urls_queue, ^{ // your code }); dispatch_release(urls_queue); // 合并汇总结果 dispatch_group_t group = dispatch_group_create(); dispatch_group_async(group, dispatch_get_global_queue(0,0), ^{ // 并行执行的线程一 }); dispatch_group_async(group, dispatch_get_global_queue(0,0), ^{ // 并行执行的线程二 }); dispatch_group_notify(group, dispatch_get_global_queue(0,0), ^{ // 汇总结果 });
相关文章推荐
- **在布局文件中设置Button的点击事件,代码中方法要传入View的原因分析**
- python 上传下载文件
- 学习进度条
- 学习进度条
- Android - 事件传递机制
- python真的还蛮可爱的(*^__^*)
- ateObjectsUsingBlock 、for 、for(... in ...) 的区别 & 性能测试 for VS for(... in ...)
- UE4-ServerTarget模板
- Emacs快捷键总结
- 竖线 横线
- 结构体基础
- QSqlDatabase: QMYSQL driver not loaded 解决方法
- 一个fork的面试题
- iOS---------- @synchronized(self)的用法
- 学习进度条
- CSS总结
- 学习进度条
- Xcode提交图片出错:Commit failed not under version control (1)
- Persistence持久化
- bool if float