0

我为我的无知道歉,但我对线程的工作原理一无所知。我正在编写一个吉他英雄,我意识到我加载的第一首音乐我的性能下降了巨大。如果我重新启动相同的音乐或加载另一首就可以了。

所以我认为它应该是与资产创建有关的东西,我忘记预加载的东西。我运行了 gDEbugger,结果当 fps 开始下降时,它会打印出大量荒谬的“线程创建/线程终止”。当这些消息停止时,游戏 fps 再次上升。问题是:如果我的游戏正在创建这些线程,我不知道为什么,我只创建一个用于加载资源的线程,我开始加载资源并在完成后停止。也许我把这个线程搞砸了。gDebugger 的字段包含有关线程的信息,例如哪个 dll 创建了它,但所有字段都填充有“N/A”。

我想到的一种可能性是 GLee(我用于 opengl 扩展)正在创建它们。但我不知道如何查找。我希望有人知道调试这些线程的工具。

提前致谢。

4

1 回答 1

0

如果您认为它可能是 GLee,并且如果 GLee 与您正在加载的音乐资产无关,请尝试删除该代码并检查线程创建消息是否消失。

实际上,您可以通过使用存根实现接口或注释掉部分代码来将这种方法用于其他库以暴力方式缩小范围。

于 2012-05-31T22:52:41.023 回答