java - LibGDX:为所有内容保留 1 个 SpriteBatch 而不丢弃它有什么危害?

标签 java libgdx

我一直在研究内存泄漏,我很困惑为什么要调用 SpriteBatch.dispose()。我认为当您运行 spriteBatch.begin()spriteBatch.end() 时,这足以防止内存泄漏等。

最佳答案

不,begin()end()dispose 方法有很大不同。

根据documentation ,

你对 dispose 方法的行为是正确的。

Releases all resources of this object.

begin()end() 用于设置关联的Batch 进行渲染,注意可以有多个batch 绘制。批处理中的所有绘制调用都必须在 beginend 方法之间完成。它们与释放内存无关,因此如果您愿意,您需要执行 dispose()

关于java - LibGDX:为所有内容保留 1 个 SpriteBatch 而不丢弃它有什么危害?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44557887/

相关文章:

org.apache.coyote.tomcat5.CoyoteResponseFacade.setBufferSize 处的 java.lang.IllegalStateException

java 8并行流按给定值组织列表

java - Libgdx 我将如何检查鼠标是否悬停在 TextField 上?

java - LibGDX - PixelBufferObject 创建、绑定(bind)和读取

java - LIBGDX 使用 spritesheet 还是单个图像更好?

Java - 使用多点触控

java - “overriding” java中具有向上转换调用的私有(private)方法

java - SQLServerExeption 试图在列中插入 NULL 值

Libgdx 缩小阶段的质量非常差

java - 使 Asset Manager 单例