Thread configuration¶
Eclipse Cyclone DDS creates several threads, each with a number of properties that can be controlled individually. These properties are:
Stack size
Scheduling class
Scheduling priority
Each thread is uniquely named. To set the properties for that thread, use the unique thread name with the Threads/Thread[@name] option.
Any subset of threads can be given special properties. Any paramaters that are not explicitly specified use the default values.
The following threads exist:
|
Garbage collector, which sleeps until garbage collection is requested for an entity. When requested, it starts monitoring the state of Eclipse Cyclone DDS, and when safe to do so, pushes the entity through the necessary state transitions. The process ends with the freeing of the memory. |
|
|
|
Processes all discovery data coming in from the network. |
|
Performs internal liveliness monitoring of Eclipse Cyclone DDS. |
|
|
For each defined channel:
|
Deserialisation and asynchronous delivery of all user data. |
|
Channel-specific “timed-event” handling transmission of control messages for reliable writers and Readers and re-transmission of data on request. Channel-specific threads exist only if the configuration includes an element for it, or if an auxiliary bandwidth limit is set for the channel. |
When no channels are explicitly defined, there is one channel named user.