我正在用Java编写一个简单的钓鱼模拟器游戏。我希望在每次演员之后有一个随机生成的等待时间。当等待结束时,会发生一个随机事件(鱼会被捕获,鱼会给你的鱼饵加油等)。我听说过有关Thread.sleep()的各种不好的事情,并且想知道在这种情况下什么对我最有用。
目前我正在使用类似的东西
Random random = new Random();
long time = System.currentTimeMillis();
long difference = random.nextInt(9000);
boolean timeMet = false;
while(!timeMet){
if((time + difference) <= System.currentTimeMillis())
timeMet = true;
}
return event;
答案 0 :(得分:2)
答案 1 :(得分:2)
你对Thread.sleep(millis)
听到了什么不好的消息?使用cpu来保持忙碌一段时间是非常浪费的。
只需使用Thread.sleep(difference);