Skip to content

Allow halting nodes to take multiple ticks to halt #1117

@tony-p

Description

@tony-p

Is your feature request related to a problem? Please describe.
Currently if an Action node is halted, it has only 1 tick to stop and clean up. For actions that take non zero time to cancel (ROS action for example), it means stalling the tree in order to halt the action gracefully.

Describe the solution you'd like
Allow halting nodes to continue to be ticked outside of the active execution tree so the execution doesn't need to be blocked. Design considerations:

  • What does this mean for writing to ports?

Describe alternatives you've considered
As far as I can see now, the only alternative would be to detach a thread, which I feel would be an antipattern to the asynchronous execution pattern, and opens up all sorts of other risks/issues.

Additional context
As this would be a fairly major change, this is a proposal for BT5

Metadata

Metadata

Assignees

No one assigned

    Labels

    wontfixThis will not be worked on

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions