src/main/java/io/reactivex/Flowable.java
@CheckReturnValue
    @BackpressureSupport(BackpressureKind.PASS_THROUGH)
    @SchedulerSupport(SchedulerSupport.CUSTOM)
    public final Flowable<T> take(long time, TimeUnit unit, Scheduler scheduler) {
        return takeUntil(timer(time, unit, scheduler));
    }
@CheckReturnValue
    @BackpressureSupport(BackpressureKind.PASS_THROUGH)
    @SchedulerSupport(SchedulerSupport.CUSTOM)
    public final Flowable<T> take(long time, TimeUnit unit, Scheduler scheduler) {
        return takeUntil(timer(time, unit, scheduler));
    }
Returns a Flowable that emits those items emitted by source Publisher before a specified time (on a
specified Scheduler) runs out.
<p>
If time runs out before the {@code Flowable} completes normally, the {@code onComplete} event will be
signaled on the provided {@link Scheduler}.
<p>
<img width="640" height="305" src="https://raw.github.com/wiki/ReactiveX/RxJava/images/rx-operators/take.ts.png" alt="">
<dl>
<dt><b>Backpressure:</b></dt>
<dd>The operator doesn't interfere with backpressure which is determined by the source {@code Publisher}'s backpressure
behavior.</dd>
<dt><b>Scheduler:</b></dt>
<dd>You specify which {@link Scheduler} this operator will use.</dd>
</dl>

@param time
the length of the time window
@param unit
the time unit of {@code time}
@param scheduler
the Scheduler used for time source
@return a Flowable that emits those items emitted by the source Publisher before the time runs out,
according to the specified Scheduler
@see <a href="http://reactivex.io/documentation/operators/take.html">ReactiveX operators documentation: Take</a>