【自用】Kotlin 简单的多个计时器实现,ScheduledExecutorService

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

scheduleWithFixedDelay(command: Runnable, initialDelay: Long, delay: Long, unit: TimeUnit)

创建并执行一个在给定初始延迟后首次启用的定期操作;
随后,在每一次执行终止和下一次执行开始之间都存在给定的延迟。
如果任务的任一执行遇到异常,就会取消后续执行。
否则,只能通过执行程序的取消或终止方法来终止该任务。

参数:

command - 要执行的任务

initialDelay - 首次执行的延迟时间

delay - 循环执行的延迟时间

unit - initialDelay delay 的时间单位

 

TimeUnit 为时间的单位

TimeUnit.MILLISECONDS    //以毫秒为单位
TimeUnit.SECONDS              //以秒为单位

枚举常量:

  • DAYS
  • HOURS
  • MINUTES
  • SECONDS
  • MILLISECONDS
  • MICROSECONDS
  • NANOSECONDS

KOTLIN:

class  Test {

    val sPool = Executors.newScheduledThreadPool(2)!!    //2个线程


    init {
    
        sPool.scheduleWithFixedDelay(taskOne,1000,1000, TimeUnit.MILLISECONDS)
        sPool.scheduleWithFixedDelay(taskTwo,1500,1500, TimeUnit.MILLISECONDS)
    }


    val taskOne = object : TimerTask() {

       override fun run() {
           Log.i("Main", "taskOne")
        }
    }


    val taskTwo = object : TimerTask() {

       override fun run() {
           Log.i("Main", "taskTwo")
        }
    }

 

    PS:自用的  不做解释                        作者:一个吃货帅锅    

 

 

转载于:https://my.oschina.net/kilosnow/blog/917676

你可能感兴趣的:(【自用】Kotlin 简单的多个计时器实现,ScheduledExecutorService)