java.lang.IllegalStateException: TimerTask is scheduled already问题分析

原创 2016年05月31日 16:42:12

今天想用一个timer去定时的机制,所以先添加了一个TimerTask

	TimerTask task = new TimerTask(){
		public void run() {
			Log.d("auth","timer on schedule");
			mCb.OnCallback("TIMEOUT", mRes);
			timer.cancel();
		}
	};

然后在需要调用的地方使用

		timer = new Timer();
		timer.schedule(task,delay);
设定相对应的timer和delay时间的长短。然后发现一个问题就是在第二次调用timer.schedule(task,delay);的时候就会报java.lang.IllegalStateException: TimerTask is scheduled already的错误,然后系统崩溃,退出。

在网络上查找了一些相关内容,得出一个结论,TimerTask是一次性的,用完了就得扔,要用的话需要重新new一个新的TimerTask出来,遂改成:

	class RequestTimerTask extends TimerTask {
		public void run() {
			Log.d(TAG,"timer on schedule");
			timer.cancel();

		}
      	}

然后再去定义个Timer,在每次需要定时的地方使用

	timer = new Timer();
	timer.schedule(new RequestTimerTask(),8000);

这样就正常了。

版权声明:本文为博主原创文章,未经博主允许不得转载。

android TimerTask 的简单应用,以及java.lang.IllegalStateException: TimerTask is scheduled already错误的解决方法

android应用开发中常常会用到定时器,不可避免的需要用到 TimerTask 定时器任务这个类 下面简单的一个示例演示了如何使用TimerTask 这个示例演示了3秒未有触屏事件发生则锁屏...
  • encienqi
  • encienqi
  • 2012年08月11日 20:16
  • 41732

关于Timer计时器控件的java.lang.IllegalStateException: TimerTask is scheduled already问题分析

博主最近在改被人的项目,准备写一个类似今日头条的加载完成提示,就写了个计时器让它显示几秒,于是就用到了timer这个计时器控件,简单的正常代码如下,因为博主的加载需要多次,当timer二次调用的时候就...
  • fzkf9225
  • fzkf9225
  • 2017年05月02日 11:42
  • 529

java.lang.IllegalStateException: TimerTask is scheduled already

使用定时器做viewPager轮播图时,遇到了这样的错误:java.lang.IllegalStateException: TimerTask is scheduled already,在网上查了一...
  • liuye066
  • liuye066
  • 2016年12月28日 15:22
  • 240

TimerTask is scheduled already 解决方法

使用Timer时出现错误java.lang.IllegalStateException: TimerTask is scheduled already 代码: private TimerTask...
  • lishouyi710
  • lishouyi710
  • 2016年12月15日 15:26
  • 571

java.lang.IllegalStateException: TimerTask is scheduled already

异常信息: 1.使用timerTask时,二次调用 timer.schedule(timerTask,4000,60*1000*10);出现异常。 private Timer t...
  • m00123456789
  • m00123456789
  • 2017年03月29日 16:06
  • 460

Android Timer使用的异常:java.lang.IllegalStateException: Timer was canceled

1 异常日志:             java.lang.IllegalStateException: Timer was canceled  2 所做操作:     ...
  • lanxingfeifei
  • lanxingfeifei
  • 2016年06月28日 13:46
  • 4808

java.lang.IllegalStateException解决办法

一:java.lang.IllegalStateException at org.apache.catalina.loader.WebappClassLoader.loadClass (W...
  • u013257679
  • u013257679
  • 2015年08月08日 18:28
  • 558

错误 java.lang.IllegalStateException: TimerTask is scheduled already错误的解决方法

android应用开发中常常会用到定时器 if (mTimerTask != null){ mTimerTask.cancel(); //将原任务从队列中移除 ...
  • zengkai19900512
  • zengkai19900512
  • 2016年07月27日 09:37
  • 2102

java.lang.IllegalStateException: Already in the pool!

java.lang.IllegalStateException: Already in the pool! 添加mVelocityTracker = null;问题得到解决 private Vel...
  • ahyaojian
  • ahyaojian
  • 2015年12月24日 15:14
  • 1389

java.lang.IllegalStateException:

java.lang.IllegalStateException: java.lang.IllegalStateException: Web app root system prope...
  • u014401141
  • u014401141
  • 2016年06月29日 16:35
  • 122
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java.lang.IllegalStateException: TimerTask is scheduled already问题分析
举报原因:
原因补充:

(最多只允许输入30个字)