java 及 js 简单定时器的使用

两种js定时器介绍
参考引用博文

设置一个定时器,并且设定了一个等待的时间[interval],当到达时间后,执行对应的方法[function],当方法执行完成定时器停止(但是定时器还在,只不过没用了);

window.setTimeout([function],[interval]) 

设置一个定时器,并且设定了一个等待的时间[interval],当到达时间后,执行对应的方法[function],当方法执行完成,定时器并没有停止,以后每隔[interval]这么长的时间都会重新的执行对应的方法[function],直到我们手动清除定时器为止;

window.setInterval([function],[interval])

清除定时器:

window.clearInterval(timer1)/window.clearTimeout(time1);

两种清除方式都可以清除通过setTimeout和setInterval设置的定时器

java 两种定时器的介绍

Timer是一种定时器工具,用来在一个后台线程计划执行指定任务,而TimerTask一个抽象类,它的子类代表一个可以被Timer计划的任务。
详细介绍参考博文

Timer 类
这里写图片描述
import java.util.Timer;
import java.util.TimerTask;


/** 
 *  
 *  
 * 在实现时,Timer类可以调度任务,TimerTask则是通过在run()方法里实现具体任务。 Timer实例可以调度多任务,它是线程安全的。 
 * 当Timer的构造器被调用时,它创建了一个线程,这个线程可以用来调度任务。 下面是代码: 
 *  
 * @author GT 
 *  
 */  
public class Task2 {  
    public static void main(String[] args) {  
        TimerTask task = new TimerTask() {  
            @Override  
            public void run() {  
                // 定时任务
                System.out.println("Hello !!!");  
            }  
        };  
        Timer timer = new Timer();  
        long delay = 0;  
        long intevalPeriod = 1 * 1000;  
        //启动定时任务,  
        timer.scheduleAtFixedRate(task, delay, intevalPeriod);  
    } // end of main  
}  

ScheduledExecutorService 可安排在给定的延迟后运行或定期执行的命令。

ScheduledExecutorService类
这里写图片描述


ScheduledExecutorService service = Executors
                            .newSingleThreadScheduledExecutor();
 // 第二个参数为首次执行的延时时间,
 scheduledFuture = service.schedule(new Runnable() {
 @Override
   public void run() {
     //任务
       netError();
   }
}, 30,  TimeUnit.SECONDS);

  //中断定时器
  scheduledFuture.cancel(true);

android Handler.postDelayed 定时器

private Handler handler = new Handler();

handler.postDelayed(new Runnable() {
@Override
 public void run() {
//跳转支付成功
  Log.e("--InputPasswordActivity","postDelayed");
  Intent intent = new Intent(InputPasswordActivity.this,                        PaySuccessActivity.class);
 startActivity(intent);
 //清除定时器
 handler.removeCallbacks(this);
 finish();
}
},2*1000);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值