java - 在 Java 性能方面处理 API 的最佳方法。 (单独的线程与单个更新线程)

标签 java multithreading game-ai

我正在用 Java 制作一个游戏。游戏目前分为三个线程(生成器线程、更新线程和绘制线程)。生成器生成一个向玩家移动的敌人。大约 800 次生成后,游戏开始出现滞后(这在某种程度上是可以理解的)。问题是我应该为每个 Ai 创建单独的线程,还是应该在更新线程中一次性更新它们(这是当前的情况)。哪一个会产生更好的性能?

最佳答案

我建议您的关键线程数量少于 CPUS 数量。如果您有 800 个 CPU,请选择大量线程。如果没有,我希望更小的线程池会更快。

您进行了多少 CPU 和内存分析?通过性能分析可以获得比使用多线程更高的速度。

关于java - 在 Java 性能方面处理 API 的最佳方法。 (单独的线程与单个更新线程),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15315371/

相关文章:

java - 我应该在生产中的 linux 服务器上使用哪个 JRE 7 版本?它总是最新的吗?

java - myMethod() 的多线程问题

visual-c++ - C++/OpenGL国际象棋游戏程序设计建议

java - 游戏编程ai : scaling walls to find a player?

java - 安卓 :Error while creating file : ENOENT (No such file or directory)

java - JSP 中的隐藏输入在将其传递给 servlet 时会产生 null

multithreading - 在运行线程中 Autowiring 或注入(inject) Bean

c - CUDA并行计算是如何工作的?

artificial-intelligence - Prolog中Connect6博弈的表示与启发

java - 如何使用 Intent() 无参数构造函数