3.6. Pulses and Timers

A pulse is an asynchronous message whose primary purpose is to signal to a process that an event has occurred. The occurrence of the pulse is the important information, not the payload that the pulse might carry. In the Cascade IP_* functions, a pulse cannot carry a payload, so that its only information content is its occurrence. Pulses in QNX 4 and Linux are implemented as proxies.

Timers can be attached to pulses such that the pulse is delivered when the timer expires, or at a set interval. This library does not deal with timers that deliver operating system signals. Using signals for asynchronous messaging is generally considered poor practise.