class TimerTask

Library: Util
Package: Timer
Header: Poco/Util/TimerTask.h


A task that can be scheduled for one-time or repeated execution by a Timer.

This is an abstract class. Subclasses must override the run() member function to implement the actual task logic.


Direct Base Classes: Poco::RefCountedObject, Poco::Runnable

All Base Classes: Poco::RefCountedObject, Poco::Runnable

Known Derived Classes: TimerFunc, TimerTaskAdapter

Member Summary

Member Functions: cancel, isCancelled, lastExecution, updateLastExecution

Inherited Functions: duplicate, referenceCount, release, run

Types Aliases


using Ptr = Poco::AutoPtr < TimerTask >;




Creates the TimerTask.


~TimerTask protected virtual


Destroys the TimerTask.

Member Functions


void cancel();

Cancels the execution of the timer. If the task has been scheduled for one-time execution and has not yet run, or has not yet been scheduled, it will never run. If the task has been scheduled for repeated execution, it will never run again. If the task is running when this call occurs, the task will run to completion, but will never run again.

Warning: A TimerTask that has been cancelled must not be scheduled again. An attempt to do so results in a Poco::Util::IllegalStateException being thrown.

isCancelled inline

bool isCancelled() const;

Returns true iff the TimerTask has been cancelled by a call to cancel().

lastExecution inline

Poco::Timestamp lastExecution() const;

Returns the time of the last execution of the timer task.

Returns 0 if the timer has never been executed.

updateLastExecution inline

void updateLastExecution();

Updates the last execution of the timer task.