private Buffer combine(Buffer buffer) { Buffer aggregate = this.aggregate; Buffer combined; for (; ; ) { combined = buffer.newBuffer().append(aggregate).append(buffer).flip(); if (AGGREGATE.compareAndSet(this, aggregate, combined)) { return combined; } aggregate = this.aggregate; } }