<分区>
我在网络上的游戏代码中找到了这些说明。但是,我不明白它是如何工作的。
start = System.nanoTime();
elapsed = System.nanoTime() - start;
wait = (100/60) - (elapsed / 1000000);
if(wait < 0)
{
wait = 4;
}
try
{
Thread.sleep(wait);
}
catch (InterruptedException e)
{
e.printStackTrace();
}
我知道 Thread.sleep(wait)
使线程在启动前等待 wait
毫秒数。但在这种情况下,为什么要为所有这些说明而烦恼呢?我尝试放置 Thread.sleep(0)
,游戏的速度快了 20 倍(所有对象都移动得太快了)。
这些指令是如何工作的?
提前致谢。