·天新网首页·加入收藏·设为首页
首页|笔记本|手机|数码相机|摄像机|MP3/MP4|主板|内存|显示器|办公|打印机|下载|开发|汽车|学院|业界
硬件|台式机|数码|数字家庭|投影仪|GPS/CPU|显卡|硬盘|服务器|网络|一体机|驱动|源码|游戏|考试|报价
您现在的位置:天新网 > 软件开发 > 开发文摘 > Java文摘
J2ME中的内存泄漏-续1-双缓冲
http://dev.21tx.com 2004年02月13日 Blog pctkx

这篇文章主要是“J2ME中的内存泄漏”文章的补充部分。
这里主要说一下使用双缓冲中容易产生的内存泄露现象
也许有人没用过双缓冲,这里做个简单的介绍
双缓冲就是在内存中开辟一个新的空间,你可以在上面绘制图片,然后一起绘制到手机屏幕上。采用双缓冲最大的好处是可以提高绘制速度,缺点是消耗内存。
创建双缓出的例子:
Image dImage=Image.createImage(width,height);//创建一张指定大小的图片
Graphics dg=dImage.getGrahics();//获得该图品的Graphics
然后就可以使用dg对象来绘制图片了
Image d=Image.createImage("/1.png");
dg.drawImage(d,0,0,Graphics.TOP | Graphics.LEFT);
最后将该图片绘制在手机屏幕就可以了
g.drawImage(dImage,0,0,Graphics.TOP | Graphics.LEFT);

释放双缓冲空间时,不能仅仅释放dImage对象,如:dImage=null;
还要释放dg对象,不然,dImage是不会被释放掉的,因此就可能造成内存泄露现象。
因该这样做:
dg=null;
dImage=null;
这只是我的经验之谈。希望对大家能有所帮助。

上一篇: Javassist: Java Bytecode Engineering Made Simple
下一篇: Servlet/JSP 容器开发手记4-Request Parameter

Google
 
热点文章
关于我们 | 联系我们 | 广告服务 | 工作机会 | 版权声明 | 欢迎投稿 | 网站地图
Copyright © 2000-2008 , www.21tx.com , All Rights Reserved .
晨新科技 版权所有 Created by TXSite.net