【问题标题】:Does application built using Kotlin Multiplatform use platform's native memory management implementation?使用 Kotlin Multiplatform 构建的应用程序是否使用平台的本机内存管理实现?
【发布时间】:2021-08-26 03:19:06
【问题描述】:

Kotlin/Native 有自己的内存管理实现。在使用 Kotlin Multiplatform Mobile(KMM) 构建移动应用程序时,Kotlin/Native 的内存管理实现的作用是什么。例如,如果一个 App 是使用 KMM 构建的,它会使用 Kotlin/Native 的内存管理而不是 ARC(Automatic Reference Counting),后者是 Swift 的内存管理实现吗?

【问题讨论】:

标签: kotlin memory-management automatic-ref-counting kotlin-multiplatform kotlin-native


【解决方案1】:

是的,它将使用 Kotlin/Native 当前的延迟引用计数垃圾收集器,它是为简单起见而选择的。

虽然内存管理模型正在发生变化,并且可能会在今年夏天结束前获得第一个新的开发者预览版。 有关更改的更多信息,您可以阅读这篇文章:https://blog.jetbrains.com/kotlin/2021/05/kotlin-native-memory-management-update/

【讨论】:

  • Kotlin/Native 如何覆盖平台的内存管理实现?例如,iOS 怎么知道使用 Kotlin/Native 的延迟引用计数垃圾收集器而不是 ARC
  • 但是,如果我在 iOS 函数中实例化一个“Kotlin”对象,那么在函数作用域完成后,谁会释放该对象? Kotlin MM 还是 iOS ARC?
猜你喜欢
  • 2021-03-29
  • 2020-03-01
  • 2013-04-20
  • 1970-01-01
  • 1970-01-01
  • 2020-05-22
  • 2021-04-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多