我有一个定时器设置应该每10秒运行一次代码,但它似乎只运行一次所需的代码。我无法弄清楚我做错了什么。 :{
Timer timer = new Timer();
timer.scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
System.out.println("it only prints this once");
}
}, 100, 100000);
提前感谢您的帮助。
答案 0 :(得分:2)
scheduleAtFixedRate
的最后两个论点似乎很奇怪。第一个总是0(这不是问题;只是意味着在第一次执行之前没有延迟)。第二个设置为2分钟,而不是0.1秒。该参数应该是以毫秒为单位的速率。 0.1秒,你应该使用100,而不是2 * 60 * 1000。
试试这个:
timer.scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
System.out.println("it only prints this once");
}
}, 100, 100);