美文网首页
GCD基础总结四

GCD基础总结四

作者: 炭墩儿 | 来源:发表于2017-09-21 07:13 被阅读0次

    上代码~

    dispatch_suspend/dispatch_resume

    当追加操作到Dispatch Queue时,过程中,有时候会有不希望执行的需求。或者之前的block的结果对后面的造成影响,希望后面的操作不执行等,这时候可以利用dispatch_suspend函数挂起指定的Dispatch Queue。但是这个挂起并不能保证可以立即停止队列上正在运行的block,未执行的block会被“挂起”

    GCDContext

    GCD允许我们为队列定义自己的上下文,因为是C语言接口,所以参数是void*,如果是oc对象,要用__bridge等关键字转为Core Foundation对象。因为是CF对象,所以要自己管理内存,一般context的关键就是内存的管理,否则会有内存泄露。

    设置的一个自定义对象,设置number属性,添加到上下文。可以看到在block里获取了上下文,正确打印属性。也成功打印了自定义对象GCDContextData的dealloc方法,没有内存问题。

    相关文章

      网友评论

          本文标题:GCD基础总结四

          本文链接:https://www.haomeiwen.com/subject/awoasxtx.html