-
Notifications
You must be signed in to change notification settings - Fork 430
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix error when SubscriptionIntraProcess is being executed more than once by the MultiThreadedExecutor #1275
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I like how minimal this solution is. As you mention that this is just a fix for SubscriptionIntraProcess
, the same kind of fix should be applied to all classes that inherit from Waitable
. If we go with this approach, it should probably be documented explicitly that execute can be called twice on one event and that this should be handled within execute
.
rclcpp/include/rclcpp/experimental/subscription_intra_process.hpp
Outdated
Show resolved
Hide resolved
I can apply a fix to action clients and services, doing the same that subscriptions do: ignore when taking data fails. For (edit) I have corrected the comment, because I originally said something that was wrong (I get confused each time I read these patches again). |
Signed-off-by: Ivan Santiago Paunovic <ivanpauno@ekumenlabs.com>
3d0f8df
to
948bb25
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm
I generally do not like this approach, as I said here: But I'll leave it to the other |
This ensures that executing is a noop if there's nothing to be executed.
Alternative to #1241.