Swift 内存管理全解析
1. 内存管理中的关系图
在 Swift 中,对象之间的关系对内存管理有着重要影响。以 Car 和 SteeringWheel 实例为例, Car 实例有一个强关系,即 car 常量;而 SteeringWheel 实例有两个强关系,分别是 wheel 常量和 Car 实例的 steeringWheel 属性。
这意味着,一旦 car 常量超出作用域, Car 实例就会被删除。而 SteeringWheel 实例只有在 wheel 常量超出作用域且 Car 实例被删除后才会被删除。
可以为程序中的每个实例设想一个强引用计数器。每次为实例建立强关系时,计数器加 1;每次强引用该实例的对象被删除时,计数器减 1。当计数器归零时,实例就会被删除。
需要注意的是,所有关系都是单向的。例如, Car 实例与 SteeringWheel 实例有强关系,但这并不意味着 SteeringWheel 实例与 Car 实例也有反向关系。不过,可以通过在 SteeringWheel 类中添加 car
Swift内存管理详解
超级会员免费看
订阅专栏 解锁全文
82

被折叠的 条评论
为什么被折叠?



