Caution: This version of this document is no longer maintained. For the latest documentation, see

TimerDestroy(), TimerDestroy_r()

Destroy a process timer


#include <sys/neutrino.h>

int TimerDestroy( timer_t id );

int TimerDestroy_r( timer_t id );


The ID of the timer that you want to destroy, as returned by TimerCreate().



Use the -l c option to qcc to link against this library. This library is usually included automatically.


These kernel calls remove a previously created timer specified by id. The timer is removed from the active system timer list and returned to the list of available timers.

The TimerDestroy() and TimerDestroy_r() functions are identical except in the way they indicate errors. See the Returns section for details.

Note: Instead of using these kernel calls directly, consider calling timer_delete().

If a timeout is pending when TimerDestroy() removes the timer, the timer is removed without being activated.

Blocking states

These calls don't block.


The only difference between these functions is the way they indicate errors:

If an error occurs, -1 is returned and errno is set. Any other value returned indicates success.
EOK is returned on success. This function does NOT set errno. If an error occurs, any value in the Errors section may be returned.


The timer specified by id doesn't exist.


QNX Neutrino

Cancellation point No
Interrupt handler No
Signal handler Yes
Thread Yes

See also:

timer_delete(), TimerCreate()

Clocks, Timers, and Getting a Kick Every So Often chapter of Getting Started with QNX Neutrino

Tick, Tock: Understanding the Neutrino Microkernel's Concept of Time chapter of the QNX Neutrino Programmer's Guide