【问题标题】:Why does Titanium Alloy have so many leaks?为什么钛合金有这么多泄漏?
【发布时间】:2019-08-30 20:21:37
【问题描述】:

为什么使用泄漏工具的仪器显示如此多的泄漏,然后在大约三个泄漏检测周期后崩溃?

这不正常吗?

我正在测试的应用程序有一个带有一个标签的索引窗口,点击它会打开另一个窗口,点击它会再次关闭。

没什么大不了的,但它似乎有泄漏? 第一次检测表明有 72 处新泄漏 第二个然后是 8 个新的泄漏...?

有人知道为什么会这样吗?

感谢您帮助我解决这个问题

【问题讨论】:

  • 这不正常。如果您的应用如此简单,请显示代码并告诉我们您使用的 SDK 版本。

标签: memory-management memory-leaks titanium titanium-alloy


【解决方案1】:

使用 Titanium 开发应用程序 8 年了,现在这看起来不像它应该的那样。每当社区发现漏洞时,开发团队通常会迅速修复。也就是说,发现泄漏的情况非常罕见。

大多数内存泄漏是开发人员产生的。例如,如果您在控制器之外创建对 UI 元素的引用,则必须清理对该 UI 元素的引用以让垃圾收集处理它。如果您没有释放组件,则无法触发垃圾收集。

除了上述之外,我无法为您提供进一步的帮助,因为您没有提供任何相关信息,例如 SDK 版本、导致它的代码等。您可能偶然发现了真正的内存泄漏,但很可能您没有释放资源。

【讨论】:

  • 是的,很抱歉没有添加更多信息我很着急 SDK 版本是 7.5.0.v20180824022007 我正在使用在 GitHub 上找到的日志合金模板并且没有修改它 github.com/appcelerator/alloy/tree/master/samples/apps/models/… 持久字节上升从一开始到大约 26MiB 这似乎不是很高吗?
  • 26mb for start 相当不错,因为它需要在 SDK 和其他东西之间将 JScore 放入内存中。但它不应该泄漏
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-08-04
  • 2016-08-03
  • 2012-05-02
相关资源
最近更新 更多