qq_31684543
qq_31684543
采纳率0%
2017-07-12 08:46 阅读 1.4k

java多线程之定时任务

线程休眠过程中如果此线程在次调用start方法会怎样,能不关闭线程啊 除了stop方法

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

2条回答 默认 最新

  • zh_qianwei zh_qianwei 2017-07-12 08:51
      private final ScheduledExecutorService mExecutorService =
                Executors.newSingleThreadScheduledExecutor();
    
    void startThreadTime(){
    stopUpdate();
    mScheduleFuture = mExecutorService.scheduleAtFixedRate(
                        new Runnable() {
                            @Override
                            public void run() {
                               // doSomething
                            }
                        }, PROGRESS_UPDATE_INITIAL_INTERVAL,
                        PROGRESS_UPDATE_INTERNAL, TimeUnit.MILLISECONDS);
    }
      private void stopUpdate() {
            if (mScheduleFuture != null) {
                mScheduleFuture.cancel(false);
            }
        }
    
    
    点赞 评论 复制链接分享
  • oyljerry oyljerry 2017-07-12 08:51

    线程休眠,再次调用start,会启动一个新的线程。你可以用线程池,有任务的时候,就交给线程池处理,没有任务的时候,线程池就释放资源

    点赞 评论 复制链接分享

相关推荐