zoukankan      html  css  js  c++  java
  • Timer和TimerTask的用法

    最近在做java课程设计的时候,我用到了timer,于是学习了一下timer的用法。

    java实现多线程比较常用的两种方法,一种是直接继承Thread类,另一种则是实现Runnable接口。Timer也可以实现多线程,它需要和TimerTask搭配使用,TimerTask是实现了Runnable接口的抽象类。

    下面是timer的一些用法

    public void schedule(TimerTask task ,long delay)

    这个方法是调度一个task,经过delay(ms)后开始进行调度,仅仅调度一次。

    public void schedule(TimerTask task, Date time)

    在指定的时间点time上调度一次。

    public void schedule(TimerTask task, long delay, long period)

    这个方法是调度一个task,在delay(ms)后开始调度,每次调度完后,最少等待period(ms)后才开始调度。

    1
    public void schedule(TimerTask task, Date firstTime, long period)

    和上一个方法类似,唯一的区别就是传入的第二个参数为第一次调度的时间。

    1
    public void scheduleAtFixedRate(TimerTask task, long delay, long period)

     一个Timer可以调度任意多个TimerTask,它会将TimerTask存储在一个队列中,顺序调度,如果想两个TimerTask并发执行,则需要创建两个Timer。

  • 相关阅读:
    《软件架构师的12项修炼》阅读笔记01
    《架构即未来》阅读笔记03
    《一线架构师时间指南》-Refined Architecture阶段
    《架构即未来》阅读笔记02
    《架构即未来》阅读笔记01
    大三下第四周总结
    RPA自动化
    在shell中使用Flask
    用蓝图实现模块化应用
    请求上下文
  • 原文地址:https://www.cnblogs.com/zyb993963526/p/6178022.html
Copyright © 2011-2022 走看看