我一直在使用 KineticJS 构建一个 iOS 应用程序(UIWebView)。我创建了一个简单的示例应用程序,只是为了了解内存利用率。我创建了一个舞台,向其中添加了 100 层,每层添加了一条线。为阶段和层分配的内存量约为每层 6 Mb 或 600 Mb。然后,我添加了代码以删除 setInterval 函数中的每一层,然后调用 stage.reset() 来确定。在分析中,内存利用率并没有降低。
我检查了我的代码以确保我没有保留对图层的引用。在一项测试中,我还取消了对阶段的引用,但分配的内存值没有改变。这可能是一个错误还是有其他方法可以使用 KineticJS 回收内存?