【问题标题】:didReceiveMemoryWarning: what type of memory?didReceiveMemoryWarning:什么类型的内存?
【发布时间】:2017-08-23 04:47:57
【问题描述】:

我有一个基本的cordova 应用程序,其中包含一些围绕cordova 框架的objective-c 代码。有时我有didReceiveMemoryWarning 通知,但我不明白问题是否出在 UIWebView 或其他内部的 javascript 上。 文档说:

您的应用从不直接调用此方法。相反,当系统确定可用内存量较低时调用此方法。

但我的问题是:什么类型的内存? 内存?堆分配?还有什么?

【问题讨论】:

    标签: ios objective-c cordova uiwebview


    【解决方案1】:

    RAM,它是用于 RAM,如果您的应用程序在没有意识到的情况下消耗了更多的内存,并且没有剩余的内存来处理任何更多的线程,那么这个 didreceivememorywarning 会被系统调用。

    【讨论】:

    • 这使用了webview的内容,所以我不能释放对象。我有很多javascript代码,有没有办法释放webview的内存而不用realese?
    • 那么在这种情况下,每一位数据都会存储在您的 RAM 中。继续浏览会使您的应用程序变得更重,并且必须调用此方法,而没有看到任何代码结构,我在这里无法为您提供更多帮助。谢谢
    【解决方案2】:

    您应该使用 Instruments 分析您的应用,这样您会更好地了解消耗内存的内容。

    【讨论】:

      【解决方案3】:

      内存问题代表RAM,通常我们使用不同的对象创建应用程序,这些对象需要一些内存来处理所需的任务。如果我们知道它们,我们可以轻松地管理内存,但有时对于初学者来说,调试内存是无法管理的,didReceiveMemoryWarning 发生了。我们可以通过仪器诊断或调试这个问题。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2010-10-29
        • 2017-08-20
        • 2011-01-19
        • 2011-10-14
        • 1970-01-01
        • 1970-01-01
        • 2023-03-27
        • 2011-06-24
        相关资源
        最近更新 更多