【发布时间】:2019-05-31 13:09:29
【问题描述】:
我正在考虑用 React Native 制作一个 iOS 项目。在 iOS 上,查找和修复所谓的“保留周期”是一个大问题,即当两个对象存储 strong 相互引用时:
class Obj1 {
var delegate: Obj2?
}
class Obj2 {
var delegate: Obj1?
}
let obj1 = Obj1()
let obj2 = Obj2()
obj1.delegate = obj2
obj2.delegate = obj1
React Native 是否有内存泄漏或保留周期的概念? JS 对应的类似代码会在 React Native 环境中创建一个保留循环吗?
传递一个捕获self 的闭包怎么样?这也会在 React Native 中造成内存泄漏吗?
总结:
- 列出的示例代码(重写为 JS)会导致 RN 中的内存泄漏吗?
- 在闭包中捕获
self会导致内存泄漏吗?
【问题讨论】:
标签: ios react-native memory-leaks automatic-ref-counting react-native-ios