`
hje
  • 浏览: 288070 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

The Miner – 专业Flash AS3性能分析器(profiler)入门教程

阅读更多
The Miner是由加拿大的Jean-Philippe Auclair(jpauclair.net)开发的Flash性能分析器(profiler),其前身为开源的FlashPreloadProfiler。The Miner虽然现在已“沦为”商业软件,但其个人非商业用途(比如学习研究,开源项目)仍可以免费自由下载使用。

本文是应jpauclair之邀,希望通过这篇简单的安装使用教程,来推广The Miner的简体中文版。

The Miner是完全绿色的软件/类库,提供两种安装使用模式:


(一)使用方法一,使用SWC直接嵌入TheMiner到最终编译的SWF中。

1. FlashDevelop新建工程,下载 theminer_v1_3_10_nc.zip , 解压,在文件夹SWCs中复制 TheMiner_zh-cn_v1_3_10.swc ( TheMiner简体中文版 )到项目文件夹的lib文件夹内,FlashDevelop中右键选中 TheMiner_zh-cn_v1_3_10.swc ,勾上Add To Library (此时 TheMiner_zh-cn_v1_3_10.swc 的文件名会变蓝)。

2. 导入TheMiner:

import com.sociodox.theminer.*然后将代码

this.addChild(new TheMiner(true));加入到初始化函数中即可。完整代码(Main.as)

package{        import flash.display.Sprite;        import flash.events.Event;        import com.sociodox.theminer.*        /**         * ...         * @author Bruce         */        public class Main extends Sprite        {                public function Main():void                {                        if (stage) init();                        else addEventListener(Event.ADDED_TO_STAGE, init);                }                private function init(e:Event = null):void                {                        removeEventListener(Event.ADDED_TO_STAGE, init);                        // entry point                        this.addChild(new TheMiner(true));                }        }}

3. 现在Ctrl+Enter,测试SWF(启动Debug版的Flash Player), 会发现SWF上侧多出了一个工具栏,比如点击即时状态就可以看到当前的FPS,内存占用等情况。


记忆体分析器,动态记录了SWF运行时中各个类(如Object,String,MovieClip,Sprite,BitmapData等)的实例数和内存占用,一目了然。


当然,最有用最常用的还是效能分析器,详细列出SWF中各个函数运行耗时及百分比。针对这些信息,开发者就可以对部分消耗过大的函数进行有针对性的优化,从而提高SWF的运行效率。另外效能分析器还可以用作AS3语法优化的测试工具。


此外,还有其他许多实用的工具,比如滑鼠事件,显示重绘区域,显示物件状态,内部事件分析器,载入器分析器,Save Capture to File(对SWF进行屏幕截图),复制资料到系统剪切板等,可以自己亲自测试使用。


(二)使用方法二,使用Pre-Launcher方式直接加载最终编译的SWF。

方法一比较简便,但如果有大量不同的项目需要测试,每个项目都多写两行代码,并要在最后发布时注释掉,就显得有些麻烦了。对此,The Miner提供了Pre-Launcher加载的方法,简单一次”安装”后,可统一对本机上的所有SWF做性能测试。原理很简单,设置Flash Player启动时首先加载TheMiner.swf,这样每次启动Flash Player时,Flash Player都自动先加载TheMiner.swf作为载体Preloader,然后再将要打开的SWF自动加载到TheMiner.swf中,使要打开的SWF在TheMiner.swf的控制之下,便可直接做性能测试了。

具体安装设置步骤:

1. 下载 theminer_v1_3_10_nc.zip, 解压,在文件夹SWFs中复制TheMiner_zh-cn_v1_3_10.swf到 C:TheMiner.swf(复制到C盘根目录并重命名为 TheMiner.swf)

2. 到Flash Global Security Settings Flash Player全局安全设置中
(即打开该网页http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager04.html)
在该网页的SWF编辑多个位置-〉添加位置-〉信任此位置,中依次填入

PreloadSWF=C:TheMiner.swf并保存。


安装完毕。现在只要随意单击任意一个SWF文件,TheMiner便会自动启动做效能分析了,比如:


成功安装后,如果想要临时暂停使用The Miner,只需要将C盘中那个 TheMiner.swf 重命名(比如重命为 “_TheMiner.swf” ,”TheMiner._swf” 等)即可,恢复使用只需要再改回原来的名字 TheMiner.swf。


(三)简单应用实例。

这一部分用一个简单的例子来展示如何利用效能分析器来分析不同AS3语法的效率。一个经典的问题是AS3的for循环的循环变量使用int要比uint快。到底两者差别有多大?使用The Miner可以很轻松的来展示两者差别。

测试代码( TheMinerTT.zip (545.4 KB) ):

package{        import flash.display.Sprite;        import flash.events.Event;        import com.sociodox.theminer.*        /**         * ...         * @author Bruce         * Ref: http://jacksondunstan.com/articles/1258         */        public class Main extends Sprite        {                private var SIZEINT:int = 10000;                private var SIZEUINT:uint = SIZEINT;                private var i:int;                private var u:uint;                public function Main():void                {                        if (stage)                                init();                        else                                addEventListener(Event.ADDED_TO_STAGE, init);                }                private function init(e:Event = null):void                {                        removeEventListener(Event.ADDED_TO_STAGE, init);                        // entry point                        this.addChild(new TheMiner(true));                        addEventListener(Event.ENTER_FRAME, onEnterFrame);                }                private function onEnterFrame(e:Event):void                {                        loop_SIZEINT();                        loop_SIZEUINT();                }                private function loop_SIZEINT():void                {                        for (i = 0; i < SIZEINT; ++i)                        {                        }                }                private function loop_SIZEUINT():void                {                        for (u = 0; u < SIZEUINT; ++u)                        {                        }                }        }}其中loop_SIZEINT的循环变量为i,int型;loop_SIZEUINT的循环变量为u,uint型。循环次数都为10000次。运行结果如下:


效能分析器显示出了一堆函数的耗时。为了更清楚的对比我们关注的两个函数loop_SIZEINT和loop_SIZEUINT,在[函数名称]中输入”loop”以作筛选,结果如下:

可以清楚看到,loop_SIZEINT耗时百分比为0.13,loop_SIZEUINT为0.26,的确是int型的循环变量要快得多。

最后单击“复制到剪贴簿”,可以把测试信息以文本形式复制保存到文件中,方便查看。


总结:The Miner简单易用功能强大,可以用来弥补Flash IDE性能分析工具的缺失,FlashDevelop性能分析工具的不足。 虽然Flash Builder本身也内置了高级的性能分析工具,但Flash Builder本身体积庞大,价格昂贵且前途未卜, 一般习惯了Flash IDE的开发者少会选择再安装个Flash Builder。所以综合来说,The Miner目前是普通开发者进行Flash项目性能测试器的必备工具。

链接:
1. The Miner Profiler官方网站 http://www.sociodox.com/theminer/
2. 功能介绍推广链接:
https://www.plimus.com/jsp/redirect.jsp?contractId=3042450&referrer=1038634
3. 个人非商用免费版下载推广链接:
https://www.plimus.com/jsp/download_trial.jsp?contractId=3042450&referrer=1038634


来源 : http://blog.163.com/sjy_814/blog/static/7780116420123256852575/
分享到:
评论

相关推荐

    The Miner – 专业Flash AS3性能分析器

    The Miner是由加拿大的Jean-Philippe Auclair(jpauclair.net)开发的Flash性能分析器(profiler),其前身为开源的FlashPreloadProfiler。The Miner虽然现在已“沦为”商业软件,但其个人非商业用途(比如学习研究,...

    TheMiner 中文版

    专业Flash AS3性能分析器"&gt;The Miner是由加拿大的Jean Philippe Auclair(jpauclair net)开发的Flash性能分析器 profiler 其前身为开源的FlashPreloadProfiler The Miner虽然现在已“沦为”商业软件 但其个人非商业...

    theMiner性能查看器

    The Miner是由加拿大的Jean-Philippe Auclair(jpauclair.net)开发的Flash性能分析器(profiler),其前身为开源的FlashPreloadProfiler。The Miner虽然现在已“沦为”商业软件,但其个人非商业用途(比如学习研究,...

    rapidminer使用手册 [RapidMiner数据分析与挖掘实战] 全17章

    《RapidMiner数据分析与挖掘实战》是一本全面介绍RapidMiner工具的指南,涵盖了从基础操作到高级应用的17个章节。RapidMiner是一款强大的数据挖掘和分析平台,广泛应用于人工智能领域。本手册旨在帮助用户掌握其核心...

    RapidMiner数据分析与挖掘实战

    《RapidMiner数据分析与挖掘实战》是一本深入讲解如何使用RapidMiner进行数据分析和挖掘的实战指南。RapidMiner是一款强大的开源数据科学平台,它提供了丰富的工具和算法,使得非编程背景的用户也能轻松进行数据...

    快速数据挖掘数据分析实战RapidMiner工具应用第9章 K-Means 聚类、辨别分析V1.pdf

    9.1 理解聚类分析 餐饮企业经常会碰到这样的问题: 1) 如何通过餐饮客户消费行为的测量,进一步评判餐饮客户的价值和对餐饮客户进行细分,找到有价值的客户群和需关注的客户群? 2) 如何合理对菜品进行分析,以便...

    快速数据挖掘数据分析实战RapidMiner工具应用第3章 设计分析流程.pdf

    在本章中,我们将深入探讨RapidMiner工具在数据挖掘和数据分析中的应用,特别是如何设计和执行分析流程。RapidMiner是一款强大的开源数据挖掘软件,它的特点是提供了一个直观的图形用户界面(GUI),使得非编程背景...

    rapidminer教程

    根据提供的文件信息,本篇知识点将围绕RapidMiner及其在数据挖掘和商业分析应用领域的相关知识进行展开。RapidMiner是一款功能强大的数据科学软件平台,它提供了一整套的数据分析、数据挖掘和机器学习工具,可以帮助...

    RapidMiner数据分析与挖掘实战——中文

    RapidMiner Studio是该工具的集成开发环境,提供了丰富的操作算子和可视化编辑器,允许用户通过拖放的方式设计分析流程。 文件内容中包含了大量看似混乱的数字和字母组合,这些可能是误读的文本或编码片段,难以...

    华为-大数据分析工具FusionInsight Miner介绍.pdf

    华为的FusionInsight Miner是一款面向大数据分析的工具,该工具以华为的大数据解决方案FusionInsight为基础,构建了一个一栈式的大数据分析平台。FusionInsight Miner提供了丰富的数据分析能力,涵盖数据探索、特征...

    rapidminer中文教程

    RapidMiner具有丰富数据挖掘分析和算法功能,常用于解决各种的商业关键问题,如营销响应率、客户细分、客户忠诚度及终身价值、资产维护、资源规划、预测性维修、质量管理、社交媒体监测和情感分析等典型商业案例。...

    Rapidminer中文手册

    RapidMiner是一款功能强大的数据挖掘工具,广泛应用于数据分析和处理领域。...通过学习和应用RapidMiner,无论是数据分析的初学者还是专业人员,都能够更加深入地理解数据背后的价值,为企业创造更大的商业价值。

    pdfminer3k-1.2.4.tar.rar

    PDFminer3k是一个Python库,专门用于从PDF文档中提取结构化信息,如文本、元数据、图像等。这个库的版本是1.2.4,以“pdfminer3k-1.2.4.tar.gz”的形式提供,并且已经打包在了一个rar文件中。这个压缩包还包含了...

    快速数据挖掘数据分析实战RapidMiner工具应用第2章 RapidMiner简介V1.1.pdf

    RapidMiner Studio包含了1500多个专业数据分析流程:从数据划分到以市场为基础的分析,再到属性生成,它包含了所有您需要的数据挖掘工具。同时也包含了文本挖掘,网页挖掘,对来自网络论坛的信息的自动情感分析...

    pdfminer3k pdf 解析 python3

    用户在线、本地解析PDF的pdfminer3k官网包。使用方式见本博客:http://blog.csdn.net/y515789/article/details/77446835 --就着注释看代码,是一件美差。

    pdfminer-docs

    PDFMiner是一个专门用于从PDF文档中提取信息的工具,与其它的PDF处理工具不同,它主要关注于获取和分析文本数据。使用PDFMiner可以精确地获取页面中文本的位置以及字体和行等信息。PDFMiner包含一个能够将PDF文件...

    RapidMiner数据分析与挖掘实战_中文版

    《RapidMiner数据分析与挖掘实战》是一本深入讲解RapidMiner这一强大工具的数据分析实战指南。本书通过丰富的实例,旨在帮助读者掌握利用RapidMiner进行数据处理、建模和模型评估的关键技巧。 首先,第二章“Rapid...

    快速数据挖掘数据分析实战RapidMiner工具应用第3章 设计分析流程.rar

    在本章中,我们将深入探讨RapidMiner这一强大的数据挖掘和分析工具,重点在于设计和执行有效的分析流程。RapidMiner是一个广泛使用的开源平台,适用于数据预处理、建模、评估和可视化,尤其适合初学者和专业数据科学...

    快速数据挖掘数据分析实战RapidMiner工具应用第12章 文本挖掘V1.1.pdf

    12.1 应用场景  垃圾、邮件检测  语言种类检测 ...– 加载数据集到 RapidMiner中 – 检查这些文本 – 处理这些文本 – 使用 Naïve Bayes 算法构造一个文本分类模型 – 验证模型 – 应用模型到未分类的数据中

    PDFMiner3K安装包 tar.gz

    PDFMiner3K安装包 tar.gz PDFMiner3K安装包 tar.gzPDFMiner3K安装包 tar.gzPDFMiner3K安装包 tar.gz PDFMiner3K安装包 tar.gz PDFMiner3K安装包 tar.gz PDFMiner3K安装包 tar.gz PDFMiner3K安装包 tar.gz

Global site tag (gtag.js) - Google Analytics