Java TimerTask,Timer和scheduleAtFixedRate例子

・2 分钟阅读

快速说明,如果你需要使用一个Java TimerTask,你可以定义一个如下:

class BrightnessTimerTask extends TimerTask {
 @Override
 public void run() {
 // your custom code here ...
 } 
}

然后你可以实例化它,创建一个Timer,并像这样安排任务:

// run this task as a background/daemon thread
TimerTask timerTask = new BrightnessTimerTask();
Timer timer = new Timer(true);
timer.scheduleAtFixedRate(timerTask, 0, 5*60*1000);

一个真正的Java TimerTask例子

作为一些实际的TimerTask代码的示例,我当前正在使用的应用程序中的代码:

class BrightnessTimerTask extends TimerTask {
 @Override
 public void run() {
 //JOptionPane.showMessageDialog(null,\"Entered TimerTask::run()\");
 if (originalImage != null) {
 SwingUtilities.invokeLater(new Runnable() {
 public void run() {
 FadingImagePanel fip = new FadingImagePanel(originalImageScaled, newImage, 50, 3000);
 getContentPane().removeAll();
 getContentPane().add(fip, BorderLayout.CENTER);
 getContentPane().validate();
 }});
 }
 } 
}

这只是关于如何使用Java TimerTaskTimer的一个简单的说明;有关更多详细信息,请参见JavaTimeTaskJavaDoc

Xn_warm profile image