首页 > 移动平台 > 详细

iOS开发-Swift进阶之内存管理 & Runtime!

时间:2021-05-29 17:14:21      阅读:27      评论:0      收藏:0      [点我收藏+]

本文主要介绍swift中的内存管理,涉及引用计数、弱引用、强引用、循环引用、Runtime等
技术分享图片

内存管理 - 强引用

在swift中也是使用ARC来追踪和管理内存的,下面我们通过一个案例来进行分析

class CJLTeacher {
    var age: Int = 18
    var name: String = "CJL"
}
var t = CJLTeacher()
var t1 = t
var t2 = t
  • 查看t的内存情况,为什么其中的refCounts是0x0000000600000003?

    技术分享图片

在分析类时(参考这篇文章Swift-进阶 02:类、对象、属性)有这么一个类HeapObject,下面继续通过这个类来分析t的引用计数

  • 分析源码?HeapObject -> InlineRefCounts

struct HeapObject {
  HeapMetadata const *metadata;

  SWIFT_HEAPOBJECT_NON_OBJC_MEMBERS;
  ...
}

iOS开发-Swift进阶之内存管理 & Runtime!

原文:https://blog.51cto.com/u_15146321/2830510

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!