我正在使用 Haxe 并针对 neko 制作游戏。任何未捕获的异常都会导致 alc_cleanup 错误。
问题是,此错误阻止了异常详细信息的输出。
这很烦人,因为我使用断言,所以如果其中一个测试失败,我无法找出哪个引发了异常。
这里有什么帮助吗?
我正在使用 Haxe 并针对 neko 制作游戏。任何未捕获的异常都会导致 alc_cleanup 错误。
问题是,此错误阻止了异常详细信息的输出。
这很烦人,因为我使用断言,所以如果其中一个测试失败,我无法找出哪个引发了异常。
这里有什么帮助吗?
错误的alc_cleanup
发生只是因为正在使用的 OpenAl 音频设备(由您的游戏或底层框架)在终止程序之前尚未关闭(由于未捕获的异常)。
如果可以,您可能希望自己捕获并记录该异常,以防止它被alc_cleanup
错误破坏:
static function main()
{
try {
// do stuff
} catch (e:Dynamic) {
trace('ERROR: $e');
trace(haxe.CallStack.toString(haxe.CallStack.exceptionStack()));
Sys.exit(1);
}
}
您还可以:
neko.Lib.rethrow
自己进行必要的清理后的异常