`
feng_home
  • 浏览: 34983 次
  • 性别: Icon_minigender_1
  • 来自: 石家庄
社区版块
存档分类
最新评论
阅读更多

声明:本文为转载! 作者:goodegg5519 J2ME手机游戏论坛 www.j2megame.cn 版权所有!

 

 

 

1、设置模拟器的永久存储和堆栈

WTK关于存储的设置包括永久存储(RMS)设置和堆栈(Heap)设置,从“开始”菜单中选择:程序- J2ME Wireless Toolkit2.2 - Preferences


WTK菜单.png

 

 

 

命令,然后单击【存储设置(Storage)】标签:


存储.png

 

 

 

模拟器有永久性储存(Persistent storage)是指一个用来存储程序数据的稳定地方,使得这些数据在应用程序推出之后仍然存在,如高分榜,用户设置等,永久存储使得这些数据不会随着程序的关闭而销毁,以便下次读取并继续使用。 默认情况下,这些存储文件存储在\appdb\(skin)中,并且使用.db作为文件后缀名。例如使用DefaultColorPhone模拟器,那么它永久存储的数据文件在Storage root directory中输入用来存储(相对路径)的目录名称,而制定的目录将会存储在\appdb下。 默认情况下永久存储的大小没有限制,如果想对永久存储的大小进行限制,可以在输入框存储大小(Storage Szie)中输入大小,单位为KB。 堆栈是用于存储操作指令的内存空间,很多移动设备的堆栈都非常有限,为了更加真实的模拟实际设备的运行情况,可以在堆栈大小(Heap Size)文本框中输入需要的值,单位是KB。 2、设置模拟器的执行性能 设置模拟器的执行性能包括绘制性能、刷新性能、和网络流量3方面的设置。绘制性能包括绘制延迟和刷新率。从打开Preferences,然后单击【性能(Performance)】标签


性能.png

 

 

 

绘制延迟(Graphics primitives latency)决定了模拟器的绘制延迟,也就是程序调用和Graphics类实际绘制图形的间隔时间,用鼠标拖动可以在0~60直接随意设定延迟时间,单位为毫秒。延迟越大,绘制的越慢。 如果要改变模拟器刷新性能,在刷新方式(Display refresh)中选择刷新的方式:双缓冲刷新(Double Buffer)方式、直接刷新(Immediate)方式和周期刷新(Periodic)方式。如果选用“周期刷新”,则还需要设定刷新频率,单位为帧/秒(frame/sec)。 如果要模拟速度较慢的实际设备,可以选中虚拟机速度模拟(Enable VM speed emulation)复选框,并选择所要的速度,单位为100字节码/毫秒。 如果要调整模拟的网络速度,可以选中网络流量模拟(Enable network throughout emulation)复选框,并选择速度,单位为比特/秒。 3、监视程序的执行情况 WTK2.0提供几种工具,可以监视应用程序的运行情况,这些工具在除错与优化时非常有用。切换到监视(Monitor)标签:


监视.png

 

 

 

内存监视器(Memory Monitor):显示程序运行时的内存使用情况。 网络监视器(Network Monitor):显示程序运行时的网络收发状况,支持多种网络协议:HTTP、HTTPS、SMS和CBS。 事件监视器(Profile Monitor):显示程序运行时,每一种方法的调用次数和执行时间。 调试追踪(Trace):在控制台内显示一些追踪信息。 注:监视功能会降低应用程序的执行速度。用模拟器观察到的存储体使用率不会与实际设备上的存储体使用率完全一样。 由于大多数移动信息设备(MID)的内存都非常有限,所以WTK特别提供了内存监视器,用来查看应用程序的内存使用状况。要使用内存监视器,只需要选中Enable Memory Monitor复选框就可以了,下次执行模拟器时,就会出现监视器屏幕,用曲线显示应用程序的内存使用率:


内存监视器.png

 

 

 

从内存监视器屏幕中可以看出以下信息: 当前使用内存(Current)、最大使用内存(Maximum)在图中以虚线显示、已创建对象(Object)、已使用内存(Used)、空闲内存(Free)、总共可用内存(Total)。 如果要求系统强制执行资源回收,可以按一下运行GC(Run GC)。 如果想要查看各个对象的详细情况,请在内存监视器屏幕中,单击对象(Object)标签,从中可以看到一些关于对象的信息:类名(Name)、实例数(Live)、程序执行以来对象的总数(Total)、占用内存(Total)、对象平均占用内存(Average)。


监视器对象标签内内容.png

 

 

 

在性能要求高的应用(如游戏)中,程序的90%的时间用于执行10%的代码。我们应该把精力主要放在这10%的代码优化中。这时大家可以使用系统时钟来分析代码在当前设备上的运行情况,而Profile Monitor能够帮助我们完成这一功能。 选中启动Profiling(Enable Profiling)复选框,单击确定按钮退出。然后在模拟器上运行程序,当退出应用程序时,Profile窗口就会出现。


运行时间.png

 

大家将看到一个类似文件浏览器的窗口,它的左边是熟悉的树型控件。方法(Method)关系显示在这个层次结构的列表中。每个文件夹都是一个方法,右边窗口中就会显示出该方法的配置信息以及它所调用的方法。注意每个元素后面都显示了一个百分比。这是该特定方法所花费的时间在总的执行时间中所占用的百分比。通过查看这颗树,我们可以了解所有运行的时间的分配情况,然后尽可能优化那些百分比最高的方法。 暂时写这么多把,把资料整理了一下,也让自己温故而知新了一次!希望对大家有用!!

 

大家将看到一个类似文件浏览器的窗口,它的左边是熟悉的树型控件。方法(Method)关系显示在这个层次结构的列表中。每个文件夹都是一个方法,右边窗口中就会显示出该方法的配置信息以及它所调用的方法。注意每个元素后面都显示了一个百分比。这是该特定方法所花费的时间在总的执行时间中所占用的百分比。通过查看这颗树,我们可以了解所有运行的时间的分配情况,然后尽可能优化那些百分比最高的方法。 暂时写这么多把,把资料整理了一下,也让自己温故而知新了一次!希望对大家有用!!

大家将看到一个类似文件浏览器的窗口,它的左边是熟悉的树型控件。方法(Method)关系显示在这个层次结构的列表中。每个文件夹都是一个方法,右边窗口中就会显示出该方法的配置信息以及它所调用的方法。注意每个元素后面都显示了一个百分比。这是该特定方法所花费的时间在总的执行时间中所占用的百分比。通过查看这颗树,我们可以了解所有运行的时间的分配情况,然后尽可能优化那些百分比最高的方法。 暂时写这么多把,把资料整理了一下,也让自己温故而知新了一次!希望对大家有用!!

 

 

 

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics