Java定时器每X秒一次
所以,我基本上需要一个命令每5秒运行一次,但计时器不工作。。。 我尝试了很多不同的方法, 唯一有效的是线程; 但这导致我的整个游戏停止工作。。。 如果我尝试使用计时器,例如:Java定时器每X秒一次,java,timer,repeat,Java,Timer,Repeat,所以,我基本上需要一个命令每5秒运行一次,但计时器不工作。。。 我尝试了很多不同的方法, 唯一有效的是线程; 但这导致我的整个游戏停止工作。。。 如果我尝试使用计时器,例如: Timer timer = new Timer(1000, new ActionListener(){ @Override public void actionPerformed(ActionEvent e) { System.out.prin
Timer timer = new Timer(1000, new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("Hey");
}
});
timer.setRepeats(true);
timer.setCoalesce(true);
timer.start();
如何使此计时器正确启动?您应该将
java.util.timer
与java.util.TimerTask
Timer t = new Timer( );
t.scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
System.out.println("Hey");
}
}, 1000,5000);
1000表示执行前的1秒延迟
&每5秒将重复一次5000个方法
要停止它,只需调用
t.cancel()
您将其设置为1000,即1秒,而不是5秒。是的,我知道,但即使我将其设置为5000,它仍会执行相同的操作将其放入新线程并在该线程上调用sleep,那么游戏将不会停止工作如果您需要,我可以给您答案我会尝试,并发表另一条评论,告诉你它是否有效,但无论如何,感谢就像一种魅力!非常感谢你!