On Tue, Sep 22, 2015 at 12:53 PM, Junio C Hamano <gitster@xxxxxxxxx> wrote: > Stefan Beller <sbeller@xxxxxxxxxx> writes: > >> So how would you find out when we are done? > > while (1) { > if (we have available slot) > ask to start a new one; > if (nobody is running anymore) > break; > collect the output from running ones; > drain the output from the foreground one; > cull the finished process; > } > Personally I do not like the break; in the middle of the loop, but that's personal preference, I'd guess. I'll also move the condition for (we have available slot) back inside the called function. So I am thinking about using this in the reroll instead: run_processes_parallel_start_as_needed(&pp); while (pp.nr_processes > 0) { run_processes_parallel_buffer_stderr(&pp); run_processes_parallel_output(&pp); run_processes_parallel_collect_finished(&pp); run_processes_parallel_start_as_needed(&pp); } This eliminates the need for the flag and also exits the loop just after the possible startup of new processes. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html