【发布时间】:2017-08-31 07:12:49
【问题描述】:
抱歉,我有一个关于内存管理的问题。
我创建了一个“用户”对象。
当我结束使用时,我想让它为零来租用内存。
我尝试过,但失败了。
我怎么了?
var user:User? = User(userId)
user?.fromJson(data["user"])
self.users[userId] = user
user?.updateDb()
user = nil
【问题讨论】:
-
“我失败了”是什么意思?你得到一个编译器错误还是什么?顺便提一句。你不需要关心 swift 中的内存管理,这种语言有一个垃圾收集器,如果你的代码不能再访问一个对象,它将释放内存。检查这个:developer.apple.com/library/content/documentation/Swift/…
-
@JohnnyAW 垃圾收集和 ARC 是两个完全不同的概念。
-
您已将
User放入self.users数组中;所以有一个对它的引用,并且在该引用消失之前它不会被释放。
标签: ios swift memory-management