Timer 和 TimerTsak
- 定时任务TimerTask简介
- 定时器Timer简介
- Timer关键函数
- 定时器的一般使用方法
- 实践:倒计时小程序
定时任务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()方法的参数进行任务的调度