在加载图片,如Bitmap image=new Bitmap(filename)或使用DrawImage之类的方法绘制图形时时,可能会出现“内存不足”的问题! 使用Dispose方法来清除对象占用的内存,但也还是没用! 以下是可能的解决办法: 使用Dispose方法清除对象是,如果此对象还受到其他对象的引用,则不能成功清除。因此,清除对象占用的内存的办法就是把所有引用的对象也同时Dispose掉,而谁引用了此对象在实际中是可以判断的。
1 Bitmap image=new Bitmap(filename); 2 Bitmap new_image=new Bitmap(256,256); 3 Graphics new_gra=Graphics.FromImage(new_image); 4 new_gra.DrawImage(image,0,0,256,256); 5 //此时应当卸载的对象 6 new_gra.dispose(); 7 new_image.dispose(); 8 image.dispose();