Skip to content

1.3.0

Latest

Choose a tag to compare

@stephanschuler stephanschuler released this 22 Jun 06:46
905427f

Avoid busy-polling while waiting for pooled job input

Pooled job workers are started without command arguments and receive the
queue name and message cache identifier later via STDIN. Flow's default
handling for missing required command arguments falls back to the interactive
prompt, which checks for input every 100 microseconds and causes high CPU
usage while workers are idle.

Read the hand-off values with a blocking fgets() before Flow maps request
arguments to controller arguments. This keeps idle workers asleep until the
pool parent writes the next job payload, while still letting orphaned workers
exit cleanly when STDIN is closed.