Skip to content

Implement queued pool of AsyncCommand runners #3

Description

@piratecarrot

While implementing some motion commands with mobject-commands, I ran into the issue of not being able to use Tc2_MC2 to add buffered PTP moves, since it would wait for the previous move to be "Done". This is a bit of a mismatch in the logic behind the Done and Busy signals that the motion system uses, versus that of mobject-commands. Regardless, if I was able to execute two commands simultanesouly, while having a queue to keep feeding this execution pool, I could get the same results that I am after.

I have a small proof of concept example in my fork, under the 'dev' brand which has a QueuedPoolAsyncCommandRunner. It has configurable pool and queue capacities, configured via the constructor. Every call to ExecuteCommand will add the command either directly to the pool or to the queue. Upon cyclical calls, the command runner will remove completed commands from the pool, and dequeue any waiting commands.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions