use a channel to track total inflight.  much faster, no race condition