【问题标题】:Do you need to call dispatch_group_release under ARC?ARC下需要调用dispatch group release吗?
【发布时间】:2014-07-21 21:37:58
【问题描述】:

在现代 iOS 上,dispatch_queue_t 值是 Objective-C 对象,由 ARC 管理,因此无需对它们调用 dispatch_releasedispatch_group_t 值及其对应的 dispatch_group_release 调用是否也是如此?

【问题讨论】:

  • 小心你在问什么,你问题标题中问题的答案与正文中的答案不同。

标签: ios automatic-ref-counting grand-central-dispatch


【解决方案1】:

不,如果您的部署目标是 iOS 6+,那么您不必为 GCD 管理的任何对象调用 release 函数。

这个问题已经被问过好几次了,但最完整的答案在这里:

Does ARC support dispatch queues?

【讨论】:

    【解决方案2】:

    是的,dispatch_object_t 的所有子类都是如此,包括 dispatch_group_t

    实际上没有dispatch_group_release 调用,这些对象的唯一C 版本API 是dispatch_release

    更多详情请参阅dispatch/object.h 中的 headerdoc。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-28
      • 2012-10-10
      • 1970-01-01
      • 2018-11-07
      • 2018-03-31
      • 2012-04-17
      相关资源
      最近更新 更多