src/main/java/io/reactivex/Flowable.java
@CheckReturnValue
    @BackpressureSupport(BackpressureKind.SPECIAL)
    @SchedulerSupport(SchedulerSupport.NONE)
    public final <E extends Subscriber<? super T>> E subscribeWith(E subscriber) {
        subscribe(subscriber);
        return subscriber;
    }
@CheckReturnValue
    @BackpressureSupport(BackpressureKind.SPECIAL)
    @SchedulerSupport(SchedulerSupport.NONE)
    public final <E extends Subscriber<? super T>> E subscribeWith(E subscriber) {
        subscribe(subscriber);
        return subscriber;
    }
@ CheckReturnValue @ BackpressureSupport ( BackpressureKind . SPECIAL ) @ SchedulerSupport ( SchedulerSupport . NONE ) public final < E extends Subscriber < ? super T > > E subscribeWith ( E subscriber ) { subscribe ( subscriber ) ; return subscriber ; }
Subscribes a given Subscriber (subclass) to this Flowable and returns the given
Subscriber as is.
<p>Usage example:
<pre><code>
Flowable&lt;Integer&gt; source = Flowable.range(1, 10);
CompositeDisposable composite = new CompositeDisposable();

ResourceSubscriber&lt;Integer&gt; rs = new ResourceSubscriber&lt;&gt;() {
// ...
};

composite.add(source.subscribeWith(rs));
</code></pre>

<dl>
<dt><b>Backpressure:</b></dt>
<dd>The backpressure behavior/expectation is determined by the supplied {@code Subscriber}.</dd>
<dt><b>Scheduler:</b></dt>
<dd>{@code subscribeWith} does not operate by default on a particular {@link Scheduler}.</dd>
</dl>
@param <E> the type of the Subscriber to use and return
@param subscriber the Subscriber (subclass) to use and return, not null
@return the input {@code subscriber}
@throws NullPointerException if {@code subscriber} is null
@since 2.0
Subscribes a given Subscriber ( subclass ) to this Flowable and returns the given Subscriber as is . <p > Usage example : <pre > <code > Flowable&lt ; Integer&gt ; source = Flowable . range ( 1 10 ) ; CompositeDisposable composite = new CompositeDisposable () ;