• 错误:java.lang.IllegalStateException: TimerTask is scheduled already


    Process: com.multak.cookaraclient, PID: 27384
    java.lang.RuntimeException: Unable to resume activity {…….MainActivity}: java.lang.IllegalStateException: TimerTask is scheduled already
        at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3139)
        at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3170)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1420)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:150)
        at android.app.ActivityThread.main(ActivityThread.java:5621)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:794)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:684)
     Caused by: java.lang.IllegalStateException: TimerTask is scheduled already
        at java.util.Timer.scheduleImpl(Timer.java:569)
        at java.util.Timer.scheduleAtFixedRate(Timer.java:525)
        at com.multak.cookaraclient.MainActivity.onResume(MainActivity.java:453)
        at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1266)
        at android.app.Activity.performResume(Activity.java:6446)
        at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3129)
        at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3170)?
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1420)?
        at android.os.Handler.dispatchMessage(Handler.java:102)?
        at android.os.Looper.loop(Looper.java:150)?



    at android.app.ActivityThread.main(ActivityThread.java:5621)? at java.lang.reflect.Method.invoke(Native Method)? at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:794)? at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:684)?
      @Override
        protected void onResume() {
       super.onResume();
            if(timerTask==null){
                timerTask = new TimerTask() {
                    @Override
                    public void run() {
                        }
                };
                timer.scheduleAtFixedRate(timerTask, 100, 1000);
            }
          // timer.scheduleAtFixedRate(timerTask, 100, 1000);
    }

    一个TimerTask 通过schedule方法使用之后,不能通过schedule方法被调用第二次,如出现则报错误如上。。
    如想利用这个timertask时,只能重新获得一个实例

    今天多一点积累,明天少一分烦恼
  • 相关阅读:
    mui签到日历
    简单的vue-resourse获取json并应用到模板
    Ubuntu16.04安装wineqq国际版
    spring RestTemplate调用string和URL 请求问题
    java.util.AbstractSequentialList
    java.util.AbstractList
    maven pom 报错 inspects a maven model for resolution problems
    2019/9/6 spring实战第二章,shiro权限加密,授权
    2019/9/4 spring实战,shiro权限简单记录
    mybatis 转换结果问题
  • 原文地址:https://www.cnblogs.com/galibujianbusana/p/7383828.html
Copyright © 2020-2023  润新知