Event#

event messaging pattern

Event Communication Model#

A messaging pattern for coordinating execution between participants. The Event messaging pattern is not intended for sharing payload data, but rather communicating to other participants that there is work to do.

Mechanism#

event messaging pattern

Events over Native Sleep/Wake-up Mechanisms#

The event messaging pattern abstracts over sleep and wake-up mechanisms of the platform. Listeners can put their thread into a sleep state and be woken up by notifiers on the service.

A single participant can handle multiple listeners using a Waitset, which allows the participant to wait on several event sources simultaneously.

An EventId is provided with each notification, either assigned automatically or specified by the notifier, to facilitate event handling by the receiving participants.

Further Reading#

Understand Execution Control

Understand how Event services fit into the bigger picture of execution control with iceoryx2.

Execution Control
Example: Event Service (Rust)

See how to set up a basic Event service.

https://github.com/eclipse-iceoryx/iceoryx2/tree/main/examples/rust/event
Example: Event Multiplexing (Rust)

See how to handle multiple Event services in a single user thread.

https://github.com/eclipse-iceoryx/iceoryx2/tree/main/examples/rust/event_multiplexing