dispath_block_t
dispath_block_t
Daniella1989 发表于2年前
dispath_block_t
  • 发表于 2年前
  • 阅读 8
  • 收藏 0
  • 点赞 0
  • 评论 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小白,能够通过慢慢的不断学习牛人的代码,不断提高自己吧

标签: XMPP iOS
共有 人打赏支持
粉丝 0
博文 2
码字总数 634
×
Daniella1989
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: