2

在桌面上处理 LibGDX 游戏时,我注意到一些问题。当窗口关闭时,应用程序被移动到后台进程并且不会被删除。当任务管理器中甚至没有处理 4 或 5 个时,足以使系统爬行。在控制台中,通过退出按钮或 Gdx.app.exit() 关闭;产生以下堆栈跟踪:

Exception in thread "LWJGL Application" com.badlogic.gdx.utils.GdxRuntimeException: java.lang.StackOverflowError
at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:113)
Caused by: java.lang.StackOverflowError
at com.badlogic.gdx.Game.dispose(Game.java:31)
at com.name.game.Core.dispose(Core.java:23)
at com.name.game.Screens.GameScreen.dispose(GameScreen.java:49)
at com.name.game.Screens.GameScreen.hide(GameScreen.java:36)

应该适当地调用所有 dispose() 方法,并且 dispose() 方法会处理类中所有适用的资源。

4

0 回答 0