ios - Objective c 用于内存管理的ARC AC 算法,这是垃圾收集吗?

标签 ios objective-c algorithm

自从 Apple 在 2011 年引入自动引用计数以来,从来没有真正想过它,但是如果你看到 ARC algorithm并根据 apple documentation一段时间后所有对象都会被销毁。

enter image description here

如果我看到来自 WWDC 2011 的发布视频你可以看到这不是垃圾收集器。 所以问题是,如果它确实使用垃圾收集器算法并且所有对象最终都被销毁,为什么不使用垃圾收集器?

抱歉,如果之前有人问过这个问题,但我真的很困惑,我需要帮助才能很好地理解它

最佳答案

这是一个哲学问题,但本质上,它是一个编译时垃圾收集器,而不是运行时垃圾收集器。

它不是与程序一起运行的垃圾收集子系统,而是管理保留计数并确保所有必要的释放和保留都放在正确的位置。

这样做的实际结果是,因为它是由编译器完成的,所以它比手动保留/释放更不容易出错,而且因为它是在编译时完成的,所以它比垃圾收集器更快.

This question应该进一步阐明这个问题。

关于ios - Objective c 用于内存管理的ARC AC 算法,这是垃圾收集吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21828159/

相关文章:

ios - 如果 registerForRemoteNotificationTypes : is not supported in iOS 8. 0 及更高版本,则为 iOS 构建

ios - 使用 WatchOS App 时未调用 viewDidLoad

ios - CGAffineTransformIdentity 在多次转换后不重置 UIImageView?

iOS 应用因 Facebook SDK 中的 IDFA 而被拒绝

iOS:自定义对象的 int 变量在 NSUserDefaults 中返回 nil

android - React Native - 在 Android 中显示传入的视频通话屏幕(VOIP 应用程序)

用于消除 ip 阻止列表中的冗余的 PHP 类或函数

iphone - 在 NSDateFormatter 中更改一周的第一天

algorithm - 有人可以解释这个 RSA 示例的最后部分发生了什么吗?

arrays - 通过重复删除第一个和中间、第一个和最后一个或中间和最后一个元素来清空数组的最小成本