知识大全 TimerTask与Timer类的应用

Posted 时间

篇首语:知识是心灵的活动。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 TimerTask与Timer类的应用相关的知识,希望对你有一定的参考价值。

TimerTask与Timer类的应用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  Timer类就像一个定时器 用于设置特定的时间或周期 来配合线程动作的执行 但是只调用Timer无法执行线程动作 必须配合另一个类TimerTask的方法才能使用 从示例 中可以发现Timer类与Thread类很相近

  public Timer ()

  创建一个新的timer对象

  Timer属于计时器类 Time建立后 需要调用schedule()方法来执行计划任务 计划调度的方法有许多运用方式

  public void schedule (TimerTask task long delay)

  执行任务前先等待一段时间 task代表要执行的任务 delay代表需要等待的时间 单位为毫秒( 毫秒为 秒)

  public void schedule (TimerTask task

  Date time)

  在指定的系统时间time之后开始执行任务

  public void schedule (TimerTask task

  long delay

  long period)

  延迟一段时间后开始执行任务 任务按照设定的周期执行 传入的参数 delay为延迟时间 period为周期时间 单位均为毫秒

  public void schedule(TimerTask task

  Date firstTime

  long period)

  在指定的时间后开始执行任务 任务按照设定的周期执行 传入的参数 firstTime为指定等待时间 period为周期时间 单位都是毫秒

  public void scheduleAtFixedRate (TimerTask task

  long delay

  long period)

  执行任务内容后 等待delay时间 再按照period周期时间继续执行任务 单位都是毫秒

  public void scheduleAtFixedRate

  (TimerTask task

  Date firstTime

  long period)

  先等待一段时间firstTime 再执行计划任务 然后按照period周期时间继续执行任务 单位都是毫秒

  public void cancel()

  停止timer计时

  有了Timer的各项调用方法 还不能直接执行计划任务 需要跟TimerTask类共同运用才能使计划任务开始运行 TimerTask所包含的相关方法如下

  public void TimerTask ()

  创建一个新的TimerTask对象

  public abstract void run()

  运行计划任务的工作内容

  public void cancel()

  中止TimerTask类的执行流程 不再执行所调度的工作内容

  public void scheduleExcutionTime()

  实际运行计划任务所用的时间

  示例

  /×

  Timer和TimerTask类运行计划任务

  ×/

  import javax microedition midlet ×;

  import javax microedition lcdui ×;

  import java util ×;

  public class threadDemo extends MIDlet

  

  Display display;

  canvasThread canvasthread;

  public threadDemo ()

  

  canvasthread=new canvasThread();

  display=Display getDisplay(this);

  

  public void startApp()

  

  display setCurrent(canvasthread);

  

  public void pauseApp()

  public void destroyApp(boolean unconditional)

  public class canvasThread extends Canvas

  

  int     gameaction= ;

  int     view= ;

  boolean again;

  //声明一个Tim er类

  Timer   timers;

  Image[] cloudImage;

  Image[] sunImage;

  public canvasThread()

  

  timers=new Timer();

  try

  cloudImage = new Image[]

  Image createImage( /cloud png )

  Image createImage( /cloud png )

  Image createImage( /cloud png )

  Image createImage( /cloud png )

  ;

  sunImage = new Image[]

  Image createImage( /sun png )

  Image createImage( /sun png )

  Image createImage( /sun png )

  Image createImage( /sun png )

  ;

  catch(Exception ex)

  

  public void keyPressed(int keyCode)

  

  gameaction=getGameAction(keyCode);

  switch(gameaction)

  

  case FIRE:

  //运行计划任务

  actionView();

  break;

  

  

  public void paint(Graphics g)

  

  g setColor( xFFFFFF);

  g fillRect( getWidth() getHeight());

  g setColor( );

  g drawString( Timer线程动画应用 getWidth()/

  Graphics HCENTER | Graphics TOP);

  g drawImage(sunImage[view] getWidth()/ Graphics HCENTER |

  Graphics TOP);

  g drawImage(cloudImage[view] getWidth()/ Graphics HCENTER

  | Graphics TOP);

  

  private void actionView()

  

  /×

  安排一个计划任务

  运行任务内容 goCanvas()

  delay时间 毫秒

  period周期 毫秒

  ×/

  timers schedule(new goCanvas() );

  

  //计划任务程序内容

  class goCanvas extends TimerTask

  

  public void run()

  

  repaint();

  if(again)

  view ;

  else

  view++;

  if(again && view== )

  again=false;

  if(!again && view== )

  again=true;

  

  

  

  

cha138/Article/program/Java/hx/201311/26390

相关参考

知识大全 Java语言中Timer类的简洁用法(一)

Java语言中Timer类的简洁用法(一)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  所有类

知识大全 java定时启动线程

  在实际应用中很多情况需要定时运行程序比如分钟或者小时执行一次程序对此操作java和C#一样可以使用Timer计时器实现即javautilTimer中的Timer类  Timer的定义Timerti

知识大全 我是一名数学与应用数学的学生,不过是师范类的,想以后往精算师方面考,可以吗,要学什么课程

我是一名数学与应用数学的学生,不过是师范类的,想以后往精算师方面考,可以吗,要学什么课程!,海南师范大学的数学与应用数学专业的学生能否考精算师?只要有志于精算事业的学历在本科以上的都可以考。考生主要以

知识大全 Java定时任务Timer

Java定时任务Timer  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Java定时任务用到的

知识大全 JAVA TIMER简单用法学习

JAVATIMER简单用法学习  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Timer有两种执

知识大全 Java计时器Timer 使用

Java计时器Timer使用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  所有类型的Java应

知识大全 Timer,Quartz和Spring实现作业调度

Timer,Quartz和Spring实现作业调度  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 

知识大全 探索空类的应用和性能分支

  只要在源类中的子对象没有任何虚拟成员函数或者非静止数据成员那么空base类的优化就不会为它分配任何存储空间在这个小技巧中我将会告诉大家一些空类的应用和性能的分支    看看下面的类    clas

知识大全 GregorianCalendar类的应用——当前月日历打印

GregorianCalendar类的应用——当前月日历打印  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看

知识大全 PHP中使用pcntl和libevent实现Timer功能

PHP中使用pcntl和libevent实现Timer功能  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一