的TimerTask()没有做什么应该,只能打印一次
问题描述:
public static void main(String[] args) {
Timer ttt = new Timer();
TimerTask test = new TimerTask() {
@Override
public void run() {
System.out.println("IN");
}
};
ttt.schedule(test, 1000);
}
这本来就是打印出“IN”每秒但它仅打印一次。有小费吗?谢谢的TimerTask()没有做什么应该,只能打印一次
什么
答
您使用的schedule
的一次性版本。简单地使用接受的间隔期间overloaded version:
ttt.schedule(test, 0, 1000);
除了:较新ExecutorService优于java.util.Timer
。 Timer只有一个执行线程,所以长时间运行的任务可以延迟其他任务。 ExecutorService
可以使用线程池进行操作。讨论更多here
非常感谢你;) – user1071611 2013-04-20 00:31:26