Rephrased: 'Non-direct buffers are copied into JDK's own internal direct buffer on every I/O. We can do a better job by using our pooled allocator.  If the current allocator does not pool a direct buffer, we rely on JDK's direct buffer pool.`