以下是本人的一些拙见,知识有限:
貌似Java设计者就没有考虑重用这回事,用完干掉,要用再创建,累不累啊
这个Timer就让我很蛋疼,使用是简单,
mTimer = new Timer();
mTimer.schedule(task, 1000, 5000);
但是我想暂停他,以为只要 task.cancel(),恢复的时候再调用 schedule
事情往往不是我想的那样,再次 schedule 他会抛异常,
说:
08-08 09:21:33.995: E/AndroidRuntime(1174): Caused by: java.lang.IllegalStateException: TimerTask is scheduled already
好吧,我释放调Timer总行吧,于是我暂停的时候调用:
mTimer.cancel();
mTimer = null;
恢复的时候再重新 new Timer 再 scheduled
还是报那个错,看来只有全部重新new了,何必呢,既然是定时器为什么不可暂停/继续呢?
还有Java的线程 也是不能暂停的,蛋疼!
-------------------------------------------------------------------------------
以上是初学JAVA时候的见解,现在看来是误解,TimerTask 是不能复用的, 要重新创建