in reply to Mixing asynchronous data feed with synchronous program flow control

It looks reasonable to me. Process the arriving data in an asynchronous callback and arrange timer events for any synchronous commands that need to be issued, sending the commands in the timer callback. Another option would be to have one process handling both data and commands asynchronously and a synchronous process that talks to that multiplexer and makes the decisions.

Event-driven programming is just messy like this.

  • Comment on Re: Mixing asynchronous data feed with synchronous program flow control

Replies are listed 'Best First'.
Re^2: Mixing asynchronous data feed with synchronous program flow control
by haukex (Archbishop) on Jan 02, 2020 at 09:11 UTC
    Event-driven programming is just messy like this.

    It doesn't have to be, though, it's usually just that it requires more re-thinking of the structure of the code and scoping of variables, and thinking of everything in terms of events - IMHO Your Mother's instinct of "there must be a more elegant solution" was right :-)