Adobe Scout数据应用浅析

来源 :科学与财富 | 被引量 : 0次 | 上传用户:ouyang000
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘 要】Adobe Scout 提供了大量的数据供用户查看,但解读这些数据需要许多技术知识。本文介绍了 Scout 在幕后收集的数据以及它如何使用该数据来创建所需的图片,以便用户可以更轻松地了解所发生的情况。
  【关键字】Adobe Scout;数据
  Adobe Scout是一个内存概要分析工具,可以对 ActionScript 应用程序以及在 Adobe AIR 上运行的移动设备应用程序进行概要分析。
  Adobe Scout 使用遥测功能帮助开发人员对自己的 Flash 内容进行概要分析。Adobe Scout 提供许多高级遥测选项,供用户在对应用程序进行概要分析时使用。例如,Adobe Scout 中的远程概要分析功能允许用户在运行 Adobe Scout 之外的计算机或设备上运行要分析的内容,本文主要介绍 Scout 在幕后收集的数据以及它如何使用该数据来创建所有的图片。
  一、Adobe Scout数据应用基本知识
  Adobe Scout动分析会话时,Flash Player(或 Adobe AIR)会打开与 Scout 的套接字连接并开始发送数据。Scout 的主要面板中提供的大部分数据都是所定义的活动的名称和计时详细信息。(除了活动之外,还有跟踪语句、Stage3D 命令和纹理,以及一些其他内容。)Scout 将分析这些活动详细信息并生成其图表和图形。
  二、Adobe Scout所定义的活动
  在 Scout 中,活动是与某个特定功能相关联的时间块。Scout 中的活动具有以下特征:
  每个活动都具有名称、开始时间和结束时间。某些活动还具有其他参数。
  活动可以嵌套。如果活动 A 在活动 B 之前开始并且在活动 B 完成后结束,则 Scout 会将 B 视为 A 的子活动。
  Scout 根据它所获得的计时数据计算每个活动的总时间(total time)和自身时间(self time)。总时间是指活动的开始时间和结束时间之间的时间量。自身时间是指在该活动上(但不包括在其子活动上)花费的时间。换言之,活动的自身时间是它的总时间减去它的直系子活动的总时间。以下是一个具体的案例。
  假设 Flash Player 将表 1 中的活动数据发送到 Scout。(为绝对准确,Flash Player 不向 Scout 发送每个活动的开始和结束时间,而是发送结束时间和持续时间。但结果是相同的)
  如表所示,Scout 会根据计时数据推测活动 B 是活动 A 的子活动。如果使用自定义跨度指标 API 来定义非嵌套的活动(例如,B 在 A 期间开始但在其之后结束),则在 Scout 中查看该数据将会生成错误或者只是不会显示数据。因此,在定义自己的嵌套指标时,需要注意按照这些事件的开始顺序的反向顺序来结束这些事件。
  三、解读数据
  通过前面的解释,现在理解Scout 中显示的数据应该会容易一些。首先,在 Activity Sequence 面板中,会列出 Scout 知道的有关单个帧的所有活动,以及它们保持未变的嵌套关系,如图1所示。
  图 1单个帧的活动在 Activity Sequence 面板中显示为嵌套的活动
  可以看到每个活动的开始时间,但在默认情况下该功能被关闭,因为它通常没有用处。(右键单击列标题可以更改哪些标题可见。)需要注意的是Scout 通常会筛选掉总时间小于 0.5 ms 的活动。要切换此行为,请单击 Hide Small Items 按钮。
  另一方面,Top Activities 面板忽略了活动的开始时间和嵌套关系,以便它可以显示多个帧的聚合数据。在该面板中,同一活动的多个实例被分组到一起,而不是像在 Activity Sequence 面板中那样显示多次,因此 Scout 会指出活动在所选的时间跨度内发生了多少次,如图2所示。
  图 2 Top Activities 面板显示多个帧的聚合数据
  这两个面板背后的数据是相同的;它们只是对该数据进行了封装并且以不同的方式显示。了解這些面板背后的数据有助于更明确地理解这些含义。例如,当某个 ActionScript 函数调用BitmapData.draw() 或类似的 API 时,将会调用 Flash Player 渲染器。由于渲染在 ActionScript 执行之后开始并且在其结束之前结束,因此,Scout 会将其视为 ActionScript 活动的子活动。但是,只有在保留了嵌套信息的 Activity Sequence 面板中检查时才会看到这一情况。如果你查看 Top Activities 面板,所有活动都将被分组到一起,无论它们是由 ActionScript 触发的还是由 Flash Player 自动执行的。
  最后,这可能不是一目了然的,但是在 Summary 面板中为每个条目显示的时间是相关活动的自身时间如图3所示。Summary 面板将活动分组为多个预定义的类别,并且为每个类别显示自身时间的总和,查看哪个活动名称属于哪个类别的最简单方法是查看 Scout 使用的颜色。
  图 3 所有活动的总自身时间显示在 Summary 面板
  四、ActionScript 面板
  Scout ActionScript 面板中显示的数据与迄今为止讨论的所有事物完全不同。这是因为如果 Flash Player 在每次调用 ActionScript3 函数时都向 Scout 发送一个活动,则分析开销可能会使处理速度变得极为缓慢。因此,Flash Player 大约每毫秒对调用堆栈进行采样,并且 Scout 将推测正在发生的情况。例如,考虑 Flash Player 发送表 3 中呈现的数据的情况。
  表3 Flash Player 发送的数据
  通过该数据,Scout 可以估计出 FunctionC 大约执行了 2 ms。但是,不知道它在该期间内是执行了一次还是许多次 — Scout 只知道对于两次连续的采样,它位于调用堆栈的顶部。而且,在两次采样期间,FunctionC 可能已调用了 FunctionD(如果 FunctionD 快速返回)。这是 ActionScript 面板只能提供近似结果的原因,因此,要想获得更准确的结果,你应当选择一个较长的时间跨度。Scout 检查的样本越多,结果将越准确。
  参考文献:
  1.Adobe公司 .Adobe Flash CS6中文版经典教程[M].北京人民邮电出版社,2014.5
  2.Thibault Imbert.Adobe Scout 入门[EB/OL]. http://www.adobe.com/cn/devnet/scout/articles/adobe-scout-getting-started.html#articlecontentAdobe_numberedheader_0.
其他文献
摘 要:近几年,我国的城市化进程不断加快,路桥工程的建设规模也不断的扩大,直接推动了我国路桥工程事业的发展,快速发展的同时,社会各界对路桥工程的施工技术及质量的要求更高了,所以,加强路桥施工技术和质量的控制力度已经成为亟待解决的问题。本文将从路桥施工技术及质量控制的作用出发,阐述路桥施工技术及质量的控制措施。  关键词:路桥施工;技术;质量;控制措施  随着人们生活水平的不断提高,汽车的数量也日益
电子商务的发展极大地改变了会计环境,会计对象由过去实物形态的经济业务变成了虚拟状态的电子商务。相应地传统会计理论与实务正在逐步改变,未来的会计如何发展,这是本文探
摘 要:大学生在课堂上使用手机已经成为普遍现象,且严重影响了课堂教学的正常进行。本文通过问卷调查的方式对武昌理工学院学生课堂使用手机的情况进行调查,试图客观而准确的掌握和分析课堂使用手机的现象对大学生学习﹑生活以及身心等方面的影响,并尝试探索有效的解决方法。  关键词: 大学生 课堂 手机 影响 解决方法  手机早已成了大学生日常生活中不可或缺的一部分,以致有些学生与手机形影不离,吃饭时看着手机,
盐源县烟水配套工程建设已在我县水利建设中占有了很大的比例,在我县的水利建设中起了彻底解决等雨栽烟和栽后保苗用水的需要,改善了供水条件,增加了有效灌面,达到能灌能排,旱涝保
本文主要通过论述巡回审判车这种便捷的审判方式,让每一个法院学习借鉴这种公开、便捷、近民、高效的审判方式,本着提高法院的审判效率,降低法院的距离感;努力让人民群众在司
随着国民经济不断进步和发展,环境保护的重要性日益突显,越来越多的人希望能加强环境保护,维护人们赖以生存的家园。尤其是环保局等机关单位,更应积极开展环境保护工作,通过
曙1612块1978年投入开发,注水开发取得了显著效果,随着开发时间延长,区块主体部位水淹严重、工程原因导致井网不完善、油藏递减率高等矛盾越来越突出,区块稳产难度越来越大。