forked from ros2/rclcpp
-
Notifications
You must be signed in to change notification settings - Fork 0
use events exec instaed of single threded one #1
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
Open
jplapp
wants to merge
22
commits into
iron
Choose a base branch
from
events_executor_isolated
base: iron
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
HovorunB
approved these changes
Jan 9, 2024
This is to ensure callbacks are destroyed last on entities destruction, avoiding the gap in time in which rmw entities hold a reference to a destroyed function. Signed-off-by: Mauro Passerino <[email protected]> Co-authored-by: Mauro Passerino <[email protected]>
…2187) * add mutex to protect events_executor current entity collection and unit-test Signed-off-by: Alberto Soragna <[email protected]> * be more precise with mutex locks; make stress test less stressfull Signed-off-by: Alberto Soragna <[email protected]> * fix uncrustify error Signed-off-by: Alberto Soragna <[email protected]> --------- Signed-off-by: Alberto Soragna <[email protected]>
Signed-off-by: Chris Lalancette <[email protected]>
…2#2267) * fix(ClientGoalHandle): Made mutex recursive to prevent deadlocks This prevents deadlocks in cases, were e.g. get_status() would be called on the handle in a callback of the handle. * test(rclcpp_action): Added test for deadlocks during access of a goal handle This test checks, if the code deadlocks, if methods on the goal handle are called from the callbacks. Signed-off-by: Janosch Machowinski <[email protected]> Co-authored-by: Tomoya Fujita <[email protected]>
We need this because it is possible for one thread to be handling the on_parameter_event callback while another one is detaching the node. This lock will protect that from happening. Signed-off-by: Chris Lalancette <[email protected]>
This reverts commit 018eb9b.
… when using intra-process communication (ros2#2303) * Add intra process transient local durability support to publisher and subscription Signed-off-by: Jeffery Hsu <[email protected]> * Remove durability_is_transient_local_ from publisher_base Signed-off-by: Jeffery Hsu <[email protected]> * Design changes that move most transient local publish functionalities out of intra process manager into intra process manager Signed-off-by: Jeffery Hsu <[email protected]> * Move transient local publish to a separate function Signed-off-by: Jeffery Hsu <[email protected]> * Remove publisher buffer weak ptr from intra process manager when it associated publisher is removed. Signed-off-by: Jeffery Hsu <[email protected]> * Remove incorrectly placed RCLCPP_PUBLIC Signed-off-by: Jeffery Hsu <[email protected]> * Add missing RCLCPP_PUBLIC Signed-off-by: Jeffery Hsu <[email protected]> * Expand RingBufferImplementation beyond shared_ptr and unique_ptr Signed-off-by: Jeffery Hsu <[email protected]> * Comment and format fix Signed-off-by: Jeffery Hsu <[email protected]> --------- Signed-off-by: Jeffery Hsu <[email protected]>
AMRNAV-6258 Use intra process communication
* added rclcpp::SerializedMessage support for AnySubscriptionCallback Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> * using AnySubscription callback for generic subscriptiion Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> * updated tests Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> * Remove comment Signed-off-by: Joshua Hampp <[email protected]> --------- Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> Co-authored-by: Joshua Hampp <[email protected]> Co-authored-by: Jacob Perron <[email protected]>
commit a8e279c Author: Joshua Hampp <[email protected]> Date: Mon Dec 11 15:52:34 2023 +0100 added test for SubscriptionIntraProcess with unique subscriber Signed-off-by: Joshua Hampp <[email protected]> commit 4f6e466 Author: Joshua Hampp <[email protected]> Date: Mon Dec 11 15:51:54 2023 +0100 extended test for shared callback to cover more use cases Signed-off-by: Joshua Hampp <[email protected]> commit 2115b26 Author: Joshua Hampp <[email protected]> Date: Mon Dec 11 14:11:21 2023 +0100 added test_intra_process_subscriber to test serialized communication with IPM Signed-off-by: Joshua Hampp <[email protected]> commit 9d37234 Author: Joshua Hampp <[email protected]> Date: Mon Nov 6 07:17:36 2023 +0100 updated SubscriptionTopicStatistics to current master Signed-off-by: Joshua Hampp <[email protected]> commit 280e7be Author: Joshua Hampp <[email protected]> Date: Mon May 22 11:18:02 2023 +0200 updated to rolling Signed-off-by: Joshua Hampp <[email protected]> commit 16fc15f Author: Joshua Hampp <[email protected]> Date: Mon May 8 13:53:30 2023 +0200 fixes due to rebase Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit 3978f2a Author: Joshua Hampp <[email protected]> Date: Wed Aug 3 09:21:21 2022 +0200 added unit test for generic publisher/subscriber with intraprocess communication Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit 245c868 Author: Joshua Hampp <[email protected]> Date: Mon Aug 1 13:03:43 2022 +0200 fixed duplicated messages for ipm and serialized messages Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit e98c158 Author: Joshua Hampp <[email protected]> Date: Thu Jul 7 08:42:48 2022 +0200 added additional methods for create_generic_subscription Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit c2501cf Author: Joshua Hampp <[email protected]> Date: Thu Jul 7 08:14:41 2022 +0200 updated test to ipm issue Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit c9b148b Author: Joshua Hampp <[email protected]> Date: Thu Jul 7 08:14:18 2022 +0200 throwing error when subscription callback uses rclcpp::SerializedMessage and subscriber has a ros message type for intra process communication Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit 667d8d2 Author: Joshua Hampp <[email protected]> Date: Thu Jul 7 08:13:15 2022 +0200 fixed intra process publish of serialized message Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit 048c458 Author: Joshua Hampp <[email protected]> Date: Thu Jun 23 08:41:59 2022 +0200 using instead of typedef Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit 098b6dd Author: Joshua Hampp <[email protected]> Date: Thu Jun 23 08:41:48 2022 +0200 splitted deserialization and message forwarding Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit 158ab2c Author: Joshua Hampp <[email protected]> Date: Wed Jun 22 11:44:44 2022 +0200 removed specialization of GenericSubscription Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit 7880677 Author: Joshua Hampp <[email protected]> Date: Wed Jun 22 10:30:15 2022 +0200 fix double return Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit b4236b3 Author: Joshua Hampp <[email protected]> Date: Mon Jun 20 11:04:43 2022 +0200 enabled qos override Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit f45d12b Author: Joshua Hampp <[email protected]> Date: Mon Jun 20 11:04:24 2022 +0200 added failure case at top Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit ea9245e Author: Joshua Hampp <[email protected]> Date: Mon Jun 20 11:03:37 2022 +0200 added comment block Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit 795a281 Author: Joshua Hampp <[email protected]> Date: Mon Jun 20 11:02:25 2022 +0200 fixed comment Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit de29d0e Author: Joshua Hampp <[email protected]> Date: Mon Jun 20 07:46:27 2022 +0200 renamed to Indices Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit 9e16b43 Author: DensoADAS <[email protected]> Date: Mon Jun 20 08:10:57 2022 +0200 Update rclcpp/include/rclcpp/experimental/subscription_intra_process_base.hpp Signed-off-by: Joshua Hampp <[email protected]> Co-authored-by: Jacob Perron <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit 9b5fd63 Author: DensoADAS <[email protected]> Date: Mon Jun 20 08:10:50 2022 +0200 Update rclcpp/include/rclcpp/experimental/subscription_intra_process_base.hpp Signed-off-by: Joshua Hampp <[email protected]> Co-authored-by: Jacob Perron <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit 4cbc678 Author: Joshua Hampp <[email protected]> Date: Tue May 17 09:02:15 2022 +0200 using const modifier Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit c8fd558 Author: Joshua Hampp <[email protected]> Date: Tue May 17 09:02:05 2022 +0200 updated comments Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit 4a34d97 Author: Joshua Hampp <[email protected]> Date: Tue May 17 09:01:45 2022 +0200 renamed to SplitSubscriptionsIndices and changed datatype to unsigned Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit bb09e50 Author: Joshua Hampp <[email protected]> Date: Fri May 13 10:27:52 2022 +0200 added ipm for generic_subscription Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit 2a28f60 Author: Joshua Hampp <[email protected]> Date: Fri May 13 10:27:34 2022 +0200 updated tests Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit 18c9259 Author: Joshua Hampp <[email protected]> Date: Thu May 12 14:28:25 2022 +0200 updated tests Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit 1f1f28f Author: Joshua Hampp <[email protected]> Date: Thu May 12 14:28:03 2022 +0200 updated publisher/subcription factories Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit 33cb9dc Author: Joshua Hampp <[email protected]> Date: Thu May 12 14:27:41 2022 +0200 * publish std::unique_ptr<rclcpp::SerializedMessage> support with ipm * publisher constructor with message type support Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]> commit 636e076 Author: Joshua Hampp <[email protected]> Date: Thu May 12 14:26:20 2022 +0200 added rclcpp::SerializedMessage support to IPM Signed-off-by: Joshua Hampp <[email protected]> Signed-off-by: Joshua Hampp <[email protected]>
AMRNAV-6339 Enable IPC for rosbag recorder and foxglove bridge: Support IPC for serialized subscribers
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Events Executor is significantly faster than the default single threaded one -> use it for the composable nodes container