大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
Timer简介
Timer(计时器)位于 java.util包下,可用于创建定时任务,任务可以安排为一次性执行,也可以定期重复执行。每个计时器对象对应一个后台线程(TimerThread)。简单理解为创建Timer对象,对应TimerThread线程循环开始从TaskQueue队列中执行一个TimerTask任务。
Timer使用
-
创建Timer对象
var timer = Timer()
-
添加需要执行的任务
// 创建计时器对象 var timer = Timer() // 创建计时器任务 var timerTask: TimerTask = object : TimerTask() { override fun run(){ Log.i("Timer", "定时器执行一次") } } // 添加任务,设定开始计时器时间,第2个参数为时间单位毫秒,如果是0,立即执行 timer.schedule(timerTask, 5000)
执行以上代码,可以从控制台看到打印 定时器执行一次,以上代码适用于一次性任务的执行,如启动页定时跳转到首页。
-
循环执行任务
var timer = Timer() // 创建计时器任务 var timerTask: TimerTask = object : TimerTask() { override fun run(){ Log.i("Timer", "定时器执行一次") } } // 添加任务,设定开始计时器时间,第2个参数为0,立即执行,第3个参数为循环周期间隔为5s timer.schedule(timerTask, 0, 5000)
这里需要注意下,第2个参数启动定时器时间为0,代表立即启动,相应的任务会被立即执行,第3个参数为周期间隔5s,对应每5s后执行一次任务。
-
取消任务
var timer = Timer() timer.cancel() // 取消任务
总结
以上就是简单使用计时器(Timer)的例子,可以结合自身需求使用,这里需要注意的是,循环使用时,记得在不需要执行的时候取消任务执行,避免出现内存泄露相关的问题。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/160043.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...