Java 线程是否会使我的游戏在每台计算机上一致运行

Java 线程是否会使我的游戏在每台计算机上一致运行,java,multithreading,swing,timer,timertask,Java,Multithreading,Swing,Timer,Timertask,现在我正在使用Java Swing定时器重新绘制我的游戏等。在我的游戏计算机上,它以我想要的速度运行,但在学校计算机上运行非常缓慢。有时它在我的电脑上也运行得很慢 那么,使用线程会使它保持一致吗?我能不能继续挥杆,用当前和过去的事件时间做长杆?我试过了,但是我遇到了很多麻烦。我已经用武器延迟做了时间任务,这是否一致 我的秋千与此非常相似: 如果向下滚动,则会出现“线程”部分 谢谢。简短回答:不一定。线程可能与此无关。事实上,取决于机器可以运行的线程数、启动线程的开销以及实际执行的并行工作,最终可

现在我正在使用Java Swing定时器重新绘制我的游戏等。在我的游戏计算机上,它以我想要的速度运行,但在学校计算机上运行非常缓慢。有时它在我的电脑上也运行得很慢

那么,使用线程会使它保持一致吗?我能不能继续挥杆,用当前和过去的事件时间做长杆?我试过了,但是我遇到了很多麻烦。我已经用武器延迟做了时间任务,这是否一致

我的秋千与此非常相似:

如果向下滚动,则会出现“线程”部分


谢谢。

简短回答:不一定。线程可能与此无关。事实上,取决于机器可以运行的线程数、启动线程的开销以及实际执行的并行工作,最终可能会导致性能更差

性能不仅取决于代码的质量,还取决于运行它的机器的质量。因此,我认为一台更快的游戏机比一台使用较少硬件的学校电脑在游戏中表现更好,这是理所当然的


这并不是说你的代码不能使用重构,但总的来说,一台性能更好的机器将能够比一台性能不好的机器更好地处理事情。

“现在我正在使用Java Swing定时器重新绘制我的游戏”,这句话已经让我担心了。实际上,您应该只有一个计时器,负责更新模型状态并触发重新绘制。确实,您只有一个计时器,语法错误:p我在使用
线程时看到的唯一好处是它允许您在EDT之外更新模型状态。这方面的问题是,您需要以某种方式确保在模型更新时UI不会更新,或者以某种方式保留模型(一个是您更新的,一个是您绘制的),感谢您澄清了线程部分,所以没有办法让游戏在每台机器上一致运行吗?