我一直在用Java(和Java本身)给我的第一步图像和缓冲图像,我对flush()方法有点困惑,我的问题很简单:何时安全甚至强制冲洗代码中的图像?
做一些测试,它看起来像Image.flush()没有做任何事情,但BufferedImage.flush()给出一些随机的结果(有时一些内存似乎被释放),但我用来绘制它的组件停止在它上面绘制它背景.
所以我应该使用Image.flush()或BufferedImage.flush(),还是我必须让JVM自己做,或者可以在对象的finalize()方法中做?
我真的想不出来......
flu*_*ffy 11
你永远不需要打电话flush(),除非你想释放记忆.它基本上只是作为对象的暗示说,"嘿,现在继续删除所有后备内存缓冲区,而不是等待垃圾收集来照顾你." 它可以是一个有用的性能优化,但它永远不需要调用.
根据Java文档,调用flush()应该使图像处于可以根据需要重建自身的状态,但显然你遇到了不是这种情况的问题.基本上,flush()除非您确定不再需要图像,否则不要打电话.
| 归档时间: |
|
| 查看次数: |
6422 次 |
| 最近记录: |