diff --git a/source/Concepts/Intermediate/About-Composition.rst b/source/Concepts/Intermediate/About-Composition.rst index 816cb54ea9c..7f2858923a4 100644 --- a/source/Concepts/Intermediate/About-Composition.rst +++ b/source/Concepts/Intermediate/About-Composition.rst @@ -42,17 +42,21 @@ A component container is a host process that allows you to load and manage multi As of now, the following generic component container types are available: -* `component_container `__ +* ``component_container`` - * The most generic component container that uses a single ``SingleThreadedExecutor`` to execute all components. + * Component container that uses a single ``SingleThreadedExecutor`` to execute the components. -* `component_container_mt `__ +* ``component_container --executor-type multi-threaded`` * Component container that uses a single ``MultiThreadedExecutor`` to execute the components. -* `component_container_isolated `__ +* ``component_container --executor-type events-cbg`` - * Component container that uses a dedicated executor for each component: either ``SingleThreadedExecutor`` (default) or ``MultiThreadedExecutor``. + * Component container that uses a single ``EventsCBGExecutor`` to execute the components. + +* ``component_container --executor-type single-threaded --isolated`` + + * Component container that uses a dedicated executor for each component: available options are ``SingleThreadedExecutor`` (default), ``MultiThreadedExecutor``, and ``EventsCBGExecutor``. For more information about the types of executors, see the :ref:`TypesOfExecutors`. For more information about the options of each component container, see :ref:`ComponentContainerTypes` in the composition tutorial. diff --git a/source/Concepts/Intermediate/About-Executors.rst b/source/Concepts/Intermediate/About-Executors.rst index a1ce11a1843..296fcb4dc78 100644 --- a/source/Concepts/Intermediate/About-Executors.rst +++ b/source/Concepts/Intermediate/About-Executors.rst @@ -64,7 +64,7 @@ The Single-Threaded Executor is also used by the container process for :doc:`com Types of Executors ------------------ -Currently, rclcpp provides two Executor types, derived from a shared parent class: +Currently, rclcpp provides three Executor types, derived from a shared parent class: .. graphviz:: @@ -72,9 +72,11 @@ Currently, rclcpp provides two Executor types, derived from a shared parent clas Executor -> SingleThreadedExecutor [dir = back, arrowtail = empty]; Executor -> MultiThreadedExecutor [dir = back, arrowtail = empty]; + Executor -> EventsCBGExecutor [dir = back, arrowtail = empty]; Executor [shape=polygon,sides=4]; SingleThreadedExecutor [shape=polygon,sides=4]; MultiThreadedExecutor [shape=polygon,sides=4]; + EventsCBGExecutor [shape=polygon,sides=4]; } @@ -165,7 +167,7 @@ This semantics was first described in a `paper by Casini et al. at ECRTS 2019