Swift编程中用以管理内存的自动引用计数详解
Swift内存管理功能是通过使用自动引用计数(ARC)来处理。ARC用于初始化和取消初始化所述系统资源,从而释放使用的类实例的存储器空间当实例不再需要。ARC跟踪代码的实例有效地管理存储资源之间的关系的信息。
ARC的功能
- 在每一次一个新的类实例被创建时ARC分配一块内存以存储信息init()
- 关于实例类型和其值的信息存储在存储器中
- 当类实例不再需要它自动由deinit()释放,用于进一步类实例的存储和检索的存储空间
- ARC保存在磁道当前参照类实例的属性,常量和变量,使得deinit()仅适用于那些不使用的实例。
- ARC维护“强引用”这些类实例属性,常量和变量来限制释放当当前的类实例正在使用。
ARC程序
classStudDetails{ varstname:String! varmark:Int! init(stname:String,mark:Int){ self.stname=stname self.mark=mark } deinit{ println("Deinitialized\(self.stname)") println("Deinitialized\(self.mark)") } }
letstname="swift" letmark=98
println(stname) println(mark)