Swift函数内部实例化的Kotlin多平台(KMM)中的对象.函数结束其作用域.谁解除分配该对象



如果我在iOS上的Swift函数内从Kotlin Multiplatform实例化一个对象,当函数完成其作用域时,谁会释放Kotlin对象?iOS还是Kotlin垃圾收集器?

我知道Kotlin Native有自己的垃圾回收器。但让我困惑的是,当Swift/OjC中有Kotlin Native对象,Kotlin Nature中有ObjC对象时,内存管理是如何工作的。

简短回答,Kotlin的GC。

Kotlin本机对象与其他Objc对象一样呈现在iOS中。它们将像其他Objc对象一样获得内存管理调用。当iOS中没有任何内容包含对KN对象的引用时,KN运行时将收集它,尽管具体何时发生更为复杂。对象不一定会立即解除分配。此外,现在有两种主要的内存模型,我想它们在中起作用

最新更新