reactor-core/src/main/java/reactor/core/publisher/Flux.java
public final <C extends Collection<? super T>> Flux<C> buffer(Publisher<?> other, Supplier<C> bufferSupplier) {
		return onAssembly(new FluxBufferBoundary<>(this, other, bufferSupplier));
	}
public final <C extends Collection<? super T>> Flux<C> buffer(Publisher<?> other, Supplier<C> bufferSupplier) {
		return onAssembly(new FluxBufferBoundary<>(this, other, bufferSupplier));
	}
public final < C extends Collection < ? super T > > Flux < C > buffer ( Publisher < ? > other , Supplier < C > bufferSupplier ) { return onAssembly ( new FluxBufferBoundary <> ( this , other , bufferSupplier ) ) ; }
Collect incoming values into multiple user-defined {@link Collection} buffers, as
delimited by the signals of a companion {@link Publisher} this operator will
subscribe to.
<p>
<img class="marble" src="doc-files/marbles/bufferWithBoundary.svg" alt="">

@reactor.discard This operator discards the currently open buffer upon cancellation or error triggered by a data signal,
and the last received element when the bufferSupplier fails.

@param other the companion {@link Publisher} whose signals trigger new buffers
@param bufferSupplier a {@link Supplier} of the concrete {@link Collection} to use for each buffer
@param <C> the {@link Collection} buffer type

@return a microbatched {@link Flux} of {@link Collection} delimited by signals from a {@link Publisher}
Collect incoming values into multiple user - defined { @link Collection } buffers as delimited by the signals of a companion { @link Publisher } this operator will subscribe to . <p > <img class = marble src = doc - files / marbles / bufferWithBoundary . svg alt = >