When children.size == 1, yields until that task has finished refining.
For size > 1, List.run_child waits per task; this method returns immediately.
propagated from refinement