@@ -3947,6 +3947,7 @@ public final Integer call(Integer t1, T t2) {
3947
3947
* @return an Observable that omits items emitted by the source Observable that are followed by another item
3948
3948
* within a computed debounce duration
3949
3949
* @see <a href="https://github.com/Netflix/RxJava/wiki/Filtering-Observables#throttlewithtimeout-or-debounce">RxJava wiki: debounce</a>
3950
+ * @see <a href="https://github.com/Netflix/RxJava/wiki/Backpressure">RxJava wiki: Backpressure</a>
3950
3951
* @see <a href="http://msdn.microsoft.com/en-us/library/system.reactive.linq.observable.throttle.aspx">MSDN: Observable.Throttle</a>
3951
3952
*/
3952
3953
public final <U> Observable<T> debounce(Func1<? super T, ? extends Observable<U>> debounceSelector) {
@@ -3985,6 +3986,7 @@ public final <U> Observable<T> debounce(Func1<? super T, ? extends Observable<U>
3985
3986
* @return an Observable that filters out items from the source Observable that are too quickly followed by
3986
3987
* newer items
3987
3988
* @see <a href="https://github.com/Netflix/RxJava/wiki/Filtering-Observables#throttlewithtimeout-or-debounce">RxJava wiki: debounce</a>
3989
+ * @see <a href="https://github.com/Netflix/RxJava/wiki/Backpressure">RxJava wiki: Backpressure</a>
3988
3990
* @see <a href="http://msdn.microsoft.com/en-us/library/system.reactive.linq.observable.throttle.aspx">MSDN: Observable.Throttle</a>
3989
3991
* @see #throttleWithTimeout(long, TimeUnit)
3990
3992
*/
@@ -4027,6 +4029,7 @@ public final Observable<T> debounce(long timeout, TimeUnit unit) {
4027
4029
* @return an Observable that filters out items from the source Observable that are too quickly followed by
4028
4030
* newer items
4029
4031
* @see <a href="https://github.com/Netflix/RxJava/wiki/Filtering-Observables#throttlewithtimeout-or-debounce">RxJava wiki: debounce</a>
4032
+ * @see <a href="https://github.com/Netflix/RxJava/wiki/Backpressure">RxJava wiki: Backpressure</a>
4030
4033
* @see <a href="http://msdn.microsoft.com/en-us/library/system.reactive.linq.observable.throttle.aspx">MSDN: Observable.Throttle</a>
4031
4034
* @see #throttleWithTimeout(long, TimeUnit, Scheduler)
4032
4035
*/
@@ -5503,6 +5506,8 @@ public final Boolean call(T t) {
5503
5506
/**
5504
5507
* Instructs an Observable that is emitting items faster than its observer can consume them to buffer these
5505
5508
* items indefinitely until they can be emitted.
5509
+ * <p>
5510
+ * <img width="640" height="300" src="https://raw.github.com/wiki/Netflix/RxJava/images/rx-operators/bp.obp.buffer.png" alt="">
5506
5511
* <dl>
5507
5512
* <dt><b>Scheduler:</b></dt>
5508
5513
* <dd>{@code onBackpressureBuffer} does not operate by default on a particular {@link Scheduler}.</dd>
@@ -5520,6 +5525,8 @@ public final Observable<T> onBackpressureBuffer() {
5520
5525
* Use this operator when the upstream does not natively support backpressure and you wish to drop
5521
5526
* {@code onNext} when unable to handle further events.
5522
5527
* <p>
5528
+ * <img width="640" height="245" src="https://raw.github.com/wiki/Netflix/RxJava/images/rx-operators/bp.obp.drop.png" alt="">
5529
+ * <p>
5523
5530
* If the downstream request count hits 0 then {@code onNext} will be dropped until {@code request(long n)}
5524
5531
* is invoked again to increase the request count.
5525
5532
* <dl>
@@ -6910,6 +6917,7 @@ public final Observable<T> retryWhen(Func1<? super Observable<? extends Notifica
6910
6917
* @return an Observable that emits the results of sampling the items emitted by the source Observable at
6911
6918
* the specified time interval
6912
6919
* @see <a href="https://github.com/Netflix/RxJava/wiki/Filtering-Observables#sample-or-throttlelast">RxJava wiki: sample</a>
6920
+ * @see <a href="https://github.com/Netflix/RxJava/wiki/Backpressure">RxJava wiki: Backpressure</a>
6913
6921
* @see <a href="http://msdn.microsoft.com/en-us/library/system.reactive.linq.observable.sample.aspx">MSDN: Observable.Sample</a>
6914
6922
* @see #throttleLast(long, TimeUnit)
6915
6923
*/
@@ -6938,6 +6946,7 @@ public final Observable<T> sample(long period, TimeUnit unit) {
6938
6946
* @return an Observable that emits the results of sampling the items emitted by the source Observable at
6939
6947
* the specified time interval
6940
6948
* @see <a href="https://github.com/Netflix/RxJava/wiki/Filtering-Observables#sample-or-throttlelast">RxJava wiki: sample</a>
6949
+ * @see <a href="https://github.com/Netflix/RxJava/wiki/Backpressure">RxJava wiki: Backpressure</a>
6941
6950
* @see <a href="http://msdn.microsoft.com/en-us/library/system.reactive.linq.observable.sample.aspx">MSDN: Observable.Sample</a>
6942
6951
* @see #throttleLast(long, TimeUnit, Scheduler)
6943
6952
*/
@@ -6964,6 +6973,7 @@ public final Observable<T> sample(long period, TimeUnit unit, Scheduler schedule
6964
6973
* @return an Observable that emits the results of sampling the items emitted by this Observable whenever
6965
6974
* the {@code sampler} Observable emits an item or completes
6966
6975
* @see <a href="https://github.com/Netflix/RxJava/wiki/Filtering-Observables#sample-or-throttlelast">RxJava wiki: sample</a>
6976
+ * @see <a href="https://github.com/Netflix/RxJava/wiki/Backpressure">RxJava wiki: Backpressure</a>
6967
6977
* @see <a href="http://msdn.microsoft.com/en-us/library/system.reactive.linq.observable.sample.aspx">MSDN: Observable.Sample</a>
6968
6978
*/
6969
6979
public final <U> Observable<T> sample(Observable<U> sampler) {
@@ -8562,6 +8572,7 @@ public final Observable<T> takeWhileWithIndex(final Func2<? super T, ? super Int
8562
8572
* the unit of time of {@code windowDuration}
8563
8573
* @return an Observable that performs the throttle operation
8564
8574
* @see <a href="https://github.com/Netflix/RxJava/wiki/Filtering-Observables#throttlefirst">RxJava wiki: throttleFirst</a>
8575
+ * @see <a href="https://github.com/Netflix/RxJava/wiki/Backpressure">RxJava wiki: Backpressure</a>
8565
8576
*/
8566
8577
public final Observable<T> throttleFirst(long windowDuration, TimeUnit unit) {
8567
8578
return lift(new OperatorThrottleFirst<T>(windowDuration, unit, Schedulers.computation()));
@@ -8591,6 +8602,7 @@ public final Observable<T> throttleFirst(long windowDuration, TimeUnit unit) {
8591
8602
* event
8592
8603
* @return an Observable that performs the throttle operation
8593
8604
* @see <a href="https://github.com/Netflix/RxJava/wiki/Filtering-Observables#throttlefirst">RxJava wiki: throttleFirst</a>
8605
+ * @see <a href="https://github.com/Netflix/RxJava/wiki/Backpressure">RxJava wiki: Backpressure</a>
8594
8606
*/
8595
8607
public final Observable<T> throttleFirst(long skipDuration, TimeUnit unit, Scheduler scheduler) {
8596
8608
return lift(new OperatorThrottleFirst<T>(skipDuration, unit, scheduler));
@@ -8618,6 +8630,7 @@ public final Observable<T> throttleFirst(long skipDuration, TimeUnit unit, Sched
8618
8630
* the unit of time of {@code intervalDuration}
8619
8631
* @return an Observable that performs the throttle operation
8620
8632
* @see <a href="https://github.com/Netflix/RxJava/wiki/Filtering-Observables#sample-or-throttlelast">RxJava wiki: throttleLast</a>
8633
+ * @see <a href="https://github.com/Netflix/RxJava/wiki/Backpressure">RxJava wiki: Backpressure</a>
8621
8634
* @see <a href="http://msdn.microsoft.com/en-us/library/system.reactive.linq.observable.sample.aspx">MSDN: Observable.Sample</a>
8622
8635
* @see #sample(long, TimeUnit)
8623
8636
*/
@@ -8650,6 +8663,7 @@ public final Observable<T> throttleLast(long intervalDuration, TimeUnit unit) {
8650
8663
* event
8651
8664
* @return an Observable that performs the throttle operation
8652
8665
* @see <a href="https://github.com/Netflix/RxJava/wiki/Filtering-Observables#sample-or-throttlelast">RxJava wiki: throttleLast</a>
8666
+ * @see <a href="https://github.com/Netflix/RxJava/wiki/Backpressure">RxJava wiki: Backpressure</a>
8653
8667
* @see <a href="http://msdn.microsoft.com/en-us/library/system.reactive.linq.observable.sample.aspx">MSDN: Observable.Sample</a>
8654
8668
* @see #sample(long, TimeUnit, Scheduler)
8655
8669
*/
@@ -8688,6 +8702,7 @@ public final Observable<T> throttleLast(long intervalDuration, TimeUnit unit, Sc
8688
8702
* the {@link TimeUnit} of {@code timeout}
8689
8703
* @return an Observable that filters out items that are too quickly followed by newer items
8690
8704
* @see <a href="https://github.com/Netflix/RxJava/wiki/Filtering-Observables#throttlewithtimeout-or-debounce">RxJava wiki: throttleWithTimeout</a>
8705
+ * @see <a href="https://github.com/Netflix/RxJava/wiki/Backpressure">RxJava wiki: Backpressure</a>
8691
8706
* @see <a href="http://msdn.microsoft.com/en-us/library/system.reactive.linq.observable.throttle.aspx">MSDN: Observable.Throttle</a>
8692
8707
* @see #debounce(long, TimeUnit)
8693
8708
*/
@@ -8730,6 +8745,7 @@ public final Observable<T> throttleWithTimeout(long timeout, TimeUnit unit) {
8730
8745
* item
8731
8746
* @return an Observable that filters out items that are too quickly followed by newer items
8732
8747
* @see <a href="https://github.com/Netflix/RxJava/wiki/Filtering-Observables#throttlewithtimeout-or-debounce">RxJava wiki: throttleWithTimeout</a>
8748
+ * @see <a href="https://github.com/Netflix/RxJava/wiki/Backpressure">RxJava wiki: Backpressure</a>
8733
8749
* @see <a href="http://msdn.microsoft.com/en-us/library/system.reactive.linq.observable.throttle.aspx">MSDN: Observable.Throttle</a>
8734
8750
* @see #debounce(long, TimeUnit, Scheduler)
8735
8751
*/
0 commit comments