You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -54,7 +57,7 @@ The ROS 2 design defines one Executor (instance of [rclcpp::executor::Executor](
54
57
55
58
The dispatching mechanism resembles the ROS 1 spin thread behavior: the Executor looks up the wait queues, which notifies it of any pending callback in the DDS queue. If there are multiple pending callbacks, the ROS 2 Executor executes them in an in the order as they were registred at the Executor.
56
59
57
-
See also Section [Analysis of Default rclcpp Executor](#analysis-of-default-rclcpp-executor) for a more detailed functional description and an analysis of its semantics.
60
+
See also Section [Analysis of Default Rclcpp Executor](#analysis-of-default-rclcpp-executor) for a more detailed functional description and an analysis of its semantics.
58
61
59
62
## Rcl LET-Executor
60
63
This section describes the rcl-LET-Executor. It is a first step towards deterministic execution by providing static order scheduling with a let semantics. The abbreviation let stands for Logical-Execution-Time (LET) and is a known concept in automotive domain to simplify synchronization in process scheduling. If refers to the concept to schedule multiple ready tasks in such a way, that first all input data is read for all tasks, and then all tasks are executed. This removes any inter-dependence of input data among these ready tasks and hence input data synchronization is improved [[BP2017](#BP2017)] [[EK2018](#EK2018)].
The LET-Executor can be downloaded from the micro-ROS GitHub [rcl_executor repository](https://github.com/micro-ROS/rcl_executor). The package [rcl_executor](https://github.com/micro-ROS/rcl_executor/tree/dashing/rcl_executor) provides the LET-Executor library with a step-by-step tutorial and the package [rcl_executor_examples](https://github.com/micro-ROS/rcl_executor/tree/dashing/rcl_executor_examples) provides an example, how to use the LET-Executor.
117
120
118
-
## Analysis of Default rclcpp Executor
121
+
## Analysis of Default Rclcpp Executor
119
122
120
123
In section we provide a detailed analysis of the default executor of the rclcpp, including the software architecture, scheduling semantics and a potential refinement of the API.
121
124
@@ -158,6 +161,7 @@ The following figure illustrates this approach with two nodes served by three Ca
158
161
The different callbacks of the Drive-Base node are distributed to different Executors (visualized by the color red, yellow and green). For example the onCmdVel and publishWheelTicks callback are scheduled by the same Executor (yellow). Callbacks from different nodes can be serviced by the same Executor.
159
162
160
163
### API Changes
164
+
161
165
In this section, we describe the necessary changes to the Executor API:
0 commit comments