process buffers on demand and return them to the pool asap