【问题标题】:Is it possible to profile CPU / memory inside an Adobe AIR application?是否可以在 Adob​​e AIR 应用程序中分析 CPU/内存?
【发布时间】:2010-03-29 16:18:54
【问题描述】:

即使在 beta 文档中也找不到任何 ActionScript 原生 API,我是否正确地假设这意味着测量 CPU/内存消耗的唯一方法是制作自定义原生解决方案,将其与 AIR 挂钩并制作它在每个目标平台上工作?

基本上,目标是能够在 AIR 中提供这些信息,而不必使用外部应用程序进行分析,甚至不需要使用 Flex / Flash builder。


感谢您提供有用的答案,System.totalMemory 偷偷地避开了我!

似乎对于 CPU 负载,唯一的解决方案是使用 NativeProcess 进行一些命令行抓取。

【问题讨论】:

    标签: actionscript-3 actionscript profiling air


    【解决方案1】:

    你可以像这样测量内存消耗:

    System.totalMemory
    

    如果您在 Google 上搜索“as3 fps”,您会发现很多网站都在讨论如何测量实际帧速率。

    但我认为如果没有外部帮助,您无法找出 Flash 应用程序的 CPU 消耗量。

    【讨论】:

    • 请注意,这是运行中的 所有 个 flash 应用程序的总内存(不包括空气),因此如果您有多个应用程序实例正在运行,甚至只是在后台运行 youtube ,这将包括在内。
    【解决方案2】:

    你可能想试试这个基于 AIR 的调试器,它真的很不错:

    http://www.monsterdebugger.com/

    【讨论】:

      【解决方案3】:

      实际上,如果您不想为 Flex Builder 付费,您可以访问 Flex Builder 分析器使用的相同 API。它没有很好地记录,因此可能需要做很多工作,但是对于那些感兴趣的人来说,它就在这里:

      flash.sampler package detail

      【讨论】:

        【解决方案4】:

        Alcon 是另一个提供实时内存分析的调试器。

        【讨论】:

          【解决方案5】:

          我发现了一个未记录的 API flash.system.System.processCPUUsage():Number,但是当我使用它时它返回 0。我想知道它是否是仅发布版本的 API?

          创建发布版本需要一些时间,因为我在所有浏览器中都安装了调试版本。是的,我不知道如何在发布播放器中快速测试发布版本。当我有一个版本来测试它时,我会尝试报告。

          How to get CPU usage in flash?

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-03-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2010-09-14
            • 2011-11-16
            相关资源
            最近更新 更多