Java垃圾收集和图形处理方法

2024-01-21

我正在创建一个游戏(蛇克隆)作为一种爱好。我正在查看 Java API 中 Graphics 类的 dispose 方法。当我注释掉 dispose 方法时,无论有没有它,我的动画都会以相同的方式工作。在 Java API 中,dispose 方法执行此操作 - 释放图形上下文正在使用的系统资源。 Java垃圾回收管理程序内存的方式与dispose类似吗?我应该保留 dispose 方法吗?

API 对于解释同步方法没有多大帮助。但从我在其他论坛上读到的内容来看,ToolKit 类中的同步方法是为了确保绘图操作(就像我认为的 PaintComponent 方法)刷新到显卡。那么显卡的工作就是清理程序先前图形上下文的任何残留物吗?

这是代码:

 public void paintComponent(Graphics g) {
            super.paintComponent(g);
            Toolkit.getDefaultToolkit().sync();
            g.dispose();

     }

到那个时刻Graphics有一个简单的原则。

如果您明确创建它(例如BuffereImage.createGraphics())然后将其丢弃。

OTOH in paintComponent(Graphics g)实例g由工具包提供,并在需要时/如果需要时进行处置。在您自己的代码中这样做将导致“不可预测”的渲染。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java垃圾收集和图形处理方法 的相关文章

随机推荐