损坏的双链表
Corrupted double-linked list
当 运行 启动 Java 应用程序时,一段时间后,出现以下错误:
*** Error in `/usr/lib/jvm/java-1.7.0-openjdk-amd64/bin/java': corrupted double-linked list: 0x00007fd77c2cf640 ***
正确的指令必须设置一个变量并重新启动应用程序。
更多信息:
紧接着,运行-log 打印出来:
Process finished with exit code 134
我发现错误发生在这个时候:
private Game game;
private void backToMenu ()
{
// switch to menu screen
game.setScreen(new MenuScreen(game));
}
正好在:
game.setScreen(new MenuScreen(game));
一些导入是:
import com.badlogic.gdx.Game;
import com.packtpub.libgdx.canyonbunny.screens.MenuScreen;
libgdx版本是1.6.0,指南说书上用的libgdx版本是0.1.2(学习LibGDX游戏开发第二版)
我运行Ubuntu15.04.运行应用程序的桌面版(桌面模块)。
从 Google 的 "corrupted double-linked list" 搜索结果来看,该消息是 "malloc" 中检测到的内部断言错误的结果。这是本机 (C / C++) 库代码使用的本机堆分配函数。该错误很可能是某些东西(在本机代码中)破坏内存的结果。
这种事情绝对不应该发生在 "pure Java" 应用程序中。可能的原因包括:
- 您自己的本地库中的一个错误。
- 第 3 方本机库中的错误。
- 错误使用
Unsafe
class 导致的腐败后果。
- JVM 错误。
但是您提供的信息很少,我们无法诊断您的问题。 (提示!!)
The correct instruction must set a variable and restart the application.
你不太可能用这种方法解决问题。
UPDATE - 仍然没有足够的信息来诊断这个问题,但是当我 Googled libgdx "corrupted double-linked list"
时,我找到了问题所在是由于在调用 dispose
之后对对象调用了方法。
可能是您的代码在做类似的事情,或者是第 3 方 MenuScreen
代码在做。
简而言之,似乎某些东西错误地使用了 libgdx
包装器。
当 运行 启动 Java 应用程序时,一段时间后,出现以下错误:
*** Error in `/usr/lib/jvm/java-1.7.0-openjdk-amd64/bin/java': corrupted double-linked list: 0x00007fd77c2cf640 ***
正确的指令必须设置一个变量并重新启动应用程序。
更多信息:
紧接着,运行-log 打印出来:
Process finished with exit code 134
我发现错误发生在这个时候:
private Game game;
private void backToMenu ()
{
// switch to menu screen
game.setScreen(new MenuScreen(game));
}
正好在:
game.setScreen(new MenuScreen(game));
一些导入是:
import com.badlogic.gdx.Game;
import com.packtpub.libgdx.canyonbunny.screens.MenuScreen;
libgdx版本是1.6.0,指南说书上用的libgdx版本是0.1.2(学习LibGDX游戏开发第二版)
我运行Ubuntu15.04.运行应用程序的桌面版(桌面模块)。
从 Google 的 "corrupted double-linked list" 搜索结果来看,该消息是 "malloc" 中检测到的内部断言错误的结果。这是本机 (C / C++) 库代码使用的本机堆分配函数。该错误很可能是某些东西(在本机代码中)破坏内存的结果。
这种事情绝对不应该发生在 "pure Java" 应用程序中。可能的原因包括:
- 您自己的本地库中的一个错误。
- 第 3 方本机库中的错误。
- 错误使用
Unsafe
class 导致的腐败后果。 - JVM 错误。
但是您提供的信息很少,我们无法诊断您的问题。 (提示!!)
The correct instruction must set a variable and restart the application.
你不太可能用这种方法解决问题。
UPDATE - 仍然没有足够的信息来诊断这个问题,但是当我 Googled libgdx "corrupted double-linked list"
时,我找到了问题所在是由于在调用 dispose
之后对对象调用了方法。
可能是您的代码在做类似的事情,或者是第 3 方 MenuScreen
代码在做。
简而言之,似乎某些东西错误地使用了 libgdx
包装器。