Use multiple channels for caching of buffers.

This should help in high-concurrency situations but needs more profiling.