reactor-core/src/main/java/reactor/core/publisher/Mono.java
public final Mono<T> take(Duration duration, Scheduler timer) {
		return takeUntilOther(Mono.delay(duration, timer));
	}
public final Mono<T> take(Duration duration, Scheduler timer) {
		return takeUntilOther(Mono.delay(duration, timer));
	}
Give this Mono a chance to resolve within a specified time frame but complete if it
doesn't. This works a bit like {@link #timeout(Duration)} except that the resulting
{@link Mono} completes rather than errors when the timer expires.
<p>
<img class="marble" src="doc-files/marbles/takeWithTimespanForMono.svg" alt="">
<p>
The timeframe is evaluated using the provided {@link Scheduler}.

@param duration the maximum duration to wait for the source Mono to resolve.
@param timer the {@link Scheduler} on which to measure the duration.

@return a new {@link Mono} that will propagate the signals from the source unless
no signal is received for {@code duration}, in which case it completes.