java延时器,java 延时队列怎么实现

  java延时器,java 延时队列怎么实现

  如何解决写爬虫IP受阻的问题?立即使用。

  实现java延迟的方法:

  1.使用计时器类

  Timer类负责调度任务,即在指定的时间开始执行任务。Timer类仅用于设置计划任务。

  Timer类的Schedule方法可以根据时间表执行程序。

  公共静态void main(String[] args) {

  Timer Timer=new Timer();

  TimerTask TimerTask=new my TimerTask();

  timer.schedule(timerTask,10000,10000);

  }需要将TimerTask类型的对象传入}schedule方法,该方法需要继承并实现TimerTask类的run方法,或者将run方法实现为匿名内部类。schedule的第二个参数是程序执行第一个run方法的延迟时间,第三个参数是第一个run方法执行后执行run方法的延迟时间。

  公共类MyTimerTask扩展TimerTask{

  字符串userStatus=null

  String key1=null

  String key2=null

  Jedis jedis=新Jedis(192.168.16.100 ,6379);

  @覆盖

  公共无效运行(){

  //TODO自动生成的方法存根

  key 1=jedis . get( key 1 _ 13681033074 );

  key 2=jedis . get( key 2 _ 13681033074 );

  如果(key1!=null key2==null){

  UserStatus= enter

  }

  如果(key1!=null key2!=null){

  if(key1.equals(key2)){

  UserStatus= resident

  }否则{

  UserStatus= enter

  }

  }

  if(key1==null key2!=null){

  UserStatus=“离开”;

  }

  System.out.println(用户状态);

  }

  }实现run方法后,会按照schedule设置的时间计划执行。调度的参数可以只执行一次,没有循环时间,有很多重载调度的方法,可以根据实际情况使用。

  2.使用线程

  在Java中,有时需要暂停程序一点时间,这叫做延迟。Thread.sleep(int)方法用于普通延迟,非常简单。它将当前线程挂起指定的毫秒数。诸如

  尝试

  {

  Thread.currentThread()。睡眠(1000);//毫秒

  }

  Catch(Exception e){}更多java知识请关注java基础教程部分。这就是java如何实现延迟的细节。更多请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: