关于TimerTask的超诡异的一个bug

今天搞了一天,到现在还是不太明白。
import java.util.Timer;

public class testtaskThread {

	public void start(){
		Timer timer = new Timer();
		timer.schedule(new Task(), 1000, 1000*60);
	}
	
	protected class Task extends java.util.TimerTask {

		@Override
		public void run() {
			System.out.println("dsfdsfsdfs");
		}
		
	}
	
	public static void main(String args[]){
		testtaskThread test = new testtaskThread();
		test.start();
	}
}

只要你修改了时间的分钟比当前时间的分钟小,那么就会出现到点没执行的现象。一到被修改的时间分钟大于之前没修改过的时间分钟,那么有开始正常了。原因不知道。

你可能感兴趣的:(java)