Skip to content

StaticSingleThreadedExecutor's spin_some, spin_all and spin_once cannot use the base class implementation #1219

@brawner

Description

@brawner

I've been expanding the unit tests of the executors for all three classes, and these methods in StaticSingleThreadedExecutor should not be using the base class implementation in rclcpp::Executor. Because StaticSingleThreadedExecutor derives and implements its own add_node and remove_node, the collection of nodes in rclcpp::Executor is not updated and so these spin variants won't do any work. Either add_node and remove_node need to call the base class implementations as well, which would currently throw an "This node already has an executor" exception or these variants need to be derived specifically for StaticSingleThreadedExecutor.

Metadata

Metadata

Assignees

No one assigned

    Labels

    backlogbugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions