使用timertask进行定时任务
首先创建TimerTask:
class SynchroTimerTask extends TimerTask { @Override public void run() { //请求数据 runOnUiThread(new Runnable() { @Override public void run() { //刷新界面 } }); } }
创建timer并执行任务:
//开启自动刷新 timer= new Timer(); SynchroTimerTask task = new SynchroTimerTask(); timer.schedule(task , 0 , 1000); //0是延迟时间 1000是任务执行的间隔时间
顺便说下timer.schedule和timer.scheduleAtFixedRate两个方法的区别 :
前者是在上个任务执行结束后才开始计算间隔时间,然后重复执行任务,而后者是在任务开始时就开始计间隔时间,时间到了就重复执行任务,不会因为任务的执行时间而延后,这就涉及到了同步的问题;
时间: 2024-12-27 13:20:46