我通常使用类似于这样的主“while”循环在 Java 中编写(小型)游戏:
while(running) {
time = getTime();
if(time - oldTime > 0.01) {
tick(time - oldTime);
oldTime = getTime();
}
}
我这样做是为了使程序每秒具有最大帧数,但我听说 Thread.sleep 允许其他线程执行。我应该添加 Thread.sleep(1) (或其他一些低毫秒数)以允许计算机上的其他线程吗?这更像是一个良好的编程实践问题而不是性能问题,而且这并不是真正必要的,但我喜欢制作可靠且不贪心的程序。