Java TimerTask cancel() Method



Description

The Java TimerTask cancel() method is used to cancel this timer task.

Declaration

Following is the declaration for java.util.TimerTask.cancel() method.

public boolean cancel()

Parameters

NA

Return Value

The method call returns true if this task is scheduled for one-time execution and has not yet run. It returns false if the task was scheduled for one-time execution and has already run.

Exception

NA

Cancelling the Timer Operation Example

The following example shows the usage of Java Timer cancel() method to cancel the timer operations currently scheduled. We've created a timer object using a CustomTimerTask object. CustomTimerTask is custom class extending TimerTask class and implements the run() method which will execute at scheduled time. Then we created a timer object and scheduled a task using scheduleAtFixedRate() to execute at every 100 milliseconds starting from now. Then using cancel() method, the task is cancelled.

package com.tutorialspoint;

import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;

public class TimerTaskDemo {
   public static void main(String[] args) {

      // creating timer task, timer
      TimerTask tasknew = new CustomTimerTask();
      Timer timer = new Timer();

      // scheduling the task
      timer.scheduleAtFixedRate(tasknew, new Date(), 100);

      // terminating the task
      System.out.println("cancelling task: " + tasknew.cancel());
   }
}

class CustomTimerTask extends TimerTask {

   @Override
   public void run() {
      System.out.println("working on");
   }  
}

Output

Let us compile and run the above program, this will produce the following result.

working on
cancelling task: true

Cancelling the Timer Operation Running as Daemon Process Example

The following example shows the usage of Java Timer cancel() method to cancel the timer operations currently scheduled. We've created a timer object using a CustomTimerTask object. CustomTimerTask is custom class extending TimerTask class and implements the run() method which will execute at scheduled time. Then we created a timer object as a daemon thread and scheduled a task using scheduleAtFixedRate() to execute at every 100 milliseconds starting from now. Then using cancel() method, the task is cancelled.

package com.tutorialspoint;

import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;

public class TimerTaskDemo {
   public static void main(String[] args) {

      // creating timer task, timer
      TimerTask tasknew = new CustomTimerTask();
      Timer timer = new Timer(true);

      // scheduling the task
      timer.scheduleAtFixedRate(tasknew, new Date(), 100);

      // terminating the task
      System.out.println("cancelling task: " + tasknew.cancel());
   }
}

class CustomTimerTask extends TimerTask {

   @Override
   public void run() {
      System.out.println("working on");
   }  
}

Output

Let us compile and run the above program, this will produce the following result.

working on
cancelling task: true

Cancelling the Named Timer Operation Running as Daemon Process Example

The following example shows the usage of Java Timer cancel() method to cancel the timer operations currently scheduled. We've created a timer object using a CustomTimerTask object. CustomTimerTask is custom class extending TimerTask class and implements the run() method which will execute at scheduled time. Then we created a timer object as a daemon thread, with a given name and scheduled a task using scheduleAtFixedRate() to execute at every 100 milliseconds starting from now. Then using cancel() method, the task is cancelled.

package com.tutorialspoint;

import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;

public class TimerTaskDemo {
   public static void main(String[] args) {

      // creating timer task, timer
      TimerTask tasknew = new CustomTimerTask();
      Timer timer = new Timer("test",true);

      // scheduling the task
      timer.scheduleAtFixedRate(tasknew, new Date(), 100);

      // terminating the task
      System.out.println("cancelling task: " + tasknew.cancel());
   }
}

class CustomTimerTask extends TimerTask {

   @Override
   public void run() {
      System.out.println("working on");
   }  
}

Output

Let us compile and run the above program, this will produce the following result.

cancelling timer
working on
java_util_timertask.htm
Advertisements