Timer和TimerTask

本文介绍了Java中的Timer和TimerTask,它们用于实现定时任务。TimerTask是一个抽象类,需要重写run方法,不能直接操作UI。Timer则是一个定时器工具,可以在后台线程计划执行任务。重点讲解了Timer的关键方法如cancel()和schedule(),并提供了一个倒计时小程序的实践案例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Timer 和 TimerTsak

  1. 定时任务TimerTask简介
  2. 定时器Timer简介
  3. Timer关键函数
  4. 定时器的一般使用方法
  5. 实践:倒计时小程序
定时任务TimerTask
  • TimerTask 一个抽象类(实现的时候必须重写run方法),它的子类代表一个可以被Timer计划的任务,类似于Runnable。

  • 注意:Timertask作为一个在子线程中运行的任务不能够直接操作UI控件,可以在run方法中给主线程发消息。

  • m_timer = new Timer();
    m_timer.schedule(new TimerTask(){
         
         
    	@Override
        public void run(){
         
         
            Message message = new Message();
            message.what = MainActivity.message_code_updateplaytime;
            uihandler.sendMessage(message);
        }
    },50,1000);
    
定时器Timer
  • Timer类负责创建、管理和 执行线程。
  • Timer是一种定时器工具,用来在一个后台线程计划执行指定任务。它可以计划执行一个任务一次或反复多次。
Timer关键函数
  • Timer.cancel():停止一个Timer并终止后台线程,取消所有计划任务。

  • Timer。purge():移除列表中所有计时器

  • Timer类的主要方法是schedule,共有四个参数不相同的重载方法,可以在方法中指定线程运行的任务、任务执行的开始时间、任务执行的间隔时间

    schedule(TimerTask,long):void
    schedule(TimerTask,Date):void
    schedule(TimerTask,long,long):void
    schedule(TimerTask,Date,long):void
    
Timer关键函数 - schedule
  • void schedule(TimeTask task,long delay)
    • 延迟delay个毫秒后,执行task,只执行一次。
  • void schedule(TimerTask task,long delay,long period)
    • 延迟delay个毫秒后,执行task,之后每隔peroid毫秒执行一次任务
定时器一般使用方法
  • 要使用Timer线程:
    • 首先要定义一个TimerTask的子类
    • 然后在主程序中定义一个Timer对象和TimerTask对象
    • 把TimerTask对象作为Timer对象的schedule()方法的参数进行任务的调度

                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值