ScheduledThreadPoolExecutor周期性执行线程任务scheduleAtFixedRate
  TEZNKK3IfmPf 2023年11月14日 45 0

ScheduledThreadPoolExecutor周期性执行线程任务scheduleAtFixedRate

        ScheduledThreadPoolExecutor mScheduledThreadPoolExecutor = new ScheduledThreadPoolExecutor(1);
        mScheduledThreadPoolExecutor.scheduleAtFixedRate(new Runnable() {
            @Override
            public void run() {
                System.out.println("线程id:" + Thread.currentThread().getId() + "\t" + System.currentTimeMillis());
            }
        }, 0, 3, TimeUnit.SECONDS);

        new Thread(new Runnable() {
            @Override
            public void run() {
                try {
                    TimeUnit.SECONDS.sleep(12);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }

                System.out.println("关闭ScheduledThreadPoolExecutor");
                mScheduledThreadPoolExecutor.shutdown();
            }
        }).start();

ScheduledThreadPoolExecutor每隔3秒周期性的在线程中打印当前时间。同时另起一个线程,12秒后关闭ScheduledThreadPoolExecutor。

输出:

06-19 15:55:41.469 27469-27499/zhangphil.test I/System.out: 线程id:12150	1529394941469
06-19 15:55:44.467 27469-27499/zhangphil.test I/System.out: 线程id:12150	1529394944467
06-19 15:55:47.467 27469-27499/zhangphil.test I/System.out: 线程id:12150	1529394947467
06-19 15:55:50.468 27469-27499/zhangphil.test I/System.out: 线程id:12150	1529394950467
06-19 15:55:53.466 27469-27499/zhangphil.test I/System.out: 线程id:12150	1529394953466
06-19 15:55:53.468 27469-27500/zhangphil.test I/System.out: 关闭ScheduledThreadPoolExecutor
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

上一篇: 已经是第一篇 下一篇: 已经是最后一篇
  1. 分享:
最后一次编辑于 2023年11月14日 0

暂无评论