文档章节

dispath_block_t

Daniella1989
 Daniella1989
发布于 2015/06/21 09:31
字数 166
阅读 9
收藏 0

从本周开始,开始研究在Github中很优秀的开源代码,基于iOS的XMPP框架,其中多个代理delegate,很成功的将耦合降低,很值得学习和欣赏,在XMPPStream.m文件中,#pragma mark configuration部分有如下:

- (void)addDelegate:(id)delegate delegateQueue:(dispatch_queue_t)delegateQueue

{

// Asynchronous operation (if outside xmppQueue)

dispatch_block_t block = ^{

[multicastDelegate addDelegate:delegate delegateQueue:delegateQueue];

};

if (dispatch_get_specific(xmppQueueTag))

block();

else

dispatch_async(xmppQueue, block);

}


block作为回调函数使用,上文为较为简单的不带参数的回调函数,使用dispatch_block_t比使用typedef要简洁一些   typedef void (^block)();

希望对于我这个iOS小白,能够通过慢慢的不断学习牛人的代码,不断提高自己吧

© 著作权归作者所有

共有 人打赏支持
Daniella1989
粉丝 0
博文 2
码字总数 634
作品 0
南京
dispatch queues GCD

我们几乎可以调度队列去完成所有用线程来完成的任务。调度队列相对于线程代码更简单,易于使用,更高效。 下面讲主要简述调度队列,在应用中如何使用调度队列去执行任务。 1.关于调度队列 所...

北方人在上海
2015/11/13
0
0
iOS用dispath_once 和@synchronized创建单例的区别

@synchronized 的优点 使用dispath_once 创建单例 如果对象销毁就不能重新创建 使用@synchronized则可以避免这种情况的发生 使用block而非函数指针这样代码更加自然 @synchronized 的弊端 这...

codeShuai
2017/11/11
0
0
iOS开发 多线程(一)-转自MJ的GCD详解

一、简介 在iOS所有实现多线程的方案中,GCD应该是最有魅力的,因为GCD本身是苹果公司为多核的并行运算提出的解决方案。GCD在工作时会自动利用更多的处理器核心,以充分利用更强大的机器。G...

神补刀
2015/08/17
0
0
iOS开发多线程篇---GCD的介绍和简单使用

1.GCD的简介: Grand Central Dispatch 简称(GCD)是苹果公司开发的技术,以优化的应用程序支持多核心处理器和其他的对称多处理系统的系统。这建立在任务并行执行的线程池模式的基础上的。而...

琳小兮
2015/03/05
0
1
关于GCD一些事

1.GCD简单介绍   GCD全称为"Grand Central Dispath" 纯C语言,提供了非常强大的函数 2.GCD的好处   GCD是苹果为多核的并行运算提出的解决方案   GCD会自动利用更多的CPU内核   GCD会...

冰泪_
2016/08/31
4
0

没有更多内容

加载失败,请刷新页面

加载更多

linux使用ntfs-3g操作ntfs格式硬盘

Linux内核目前只支持对微软NTFS文件系统的读取。 NTFS-3G 是微软 NTFS 文件系统的一个开源实现,同时支持读和写。NTFS-3G 开发者使用 FUSE 文件系统来辅助开发,同时对可移植性有益。 安装 ...

linuxprobe16
今天
1
0
kubeadm部署kubernetes集群

一、环境要求 这里使用RHEL7.5 master、etcd:192.168.10.101,主机名:master node1:192.168.10.103,主机名:node1 node2:192.168.10.104,主机名:node2 所有机子能基于主机名通信,编辑...

人在艹木中
今天
10
0
Shell特殊符号总结以及cut,sort,wc,uniq,tee,tr,split命令

特殊符号总结一 * 任意个任意字符 ? 任意一个字符 # 注释字符 \ 脱义字符 | 管道符 # #号后的备注被忽略[root@centos01 ~]# ls a.txt # 备注 a.txt[root@centos01 ~]# a=1[root@centos01...

野雪球
今天
3
0
OSChina 周二乱弹 —— 程序员圣衣

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @达尔文:分享Skeeter Davis的单曲《The End of the World》 《The End of the World》- Skeeter Davis 手机党少年们想听歌,请使劲儿戳(这里...

小小编辑
今天
20
0
[ python import module ] 导入模块

import moudle_name ----> import module_name.py ---> import module_name.py文件路径 -----> sys.path (这里进行查找文件) # from app.web import Personimport app.web.Person as Pe......

_______-
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部