Class OperatorZip.Zip<R>

All Implemented Interfaces:
Serializable
Enclosing class:
OperatorZip<R>

static final class OperatorZip.Zip<R> extends AtomicLong
  • Field Details

    • serialVersionUID

      private static final long serialVersionUID
      See Also:
    • child

      final Observer<? super R> child
    • zipFunction

      private final FuncN<? extends R> zipFunction
    • childSubscription

      private final CompositeSubscription childSubscription
    • THRESHOLD

      static final int THRESHOLD
    • emitted

      int emitted
    • subscribers

      private volatile Object[] subscribers
    • requested

      private AtomicLong requested
  • Constructor Details

  • Method Details

    • start

      public void start(Observable[] os, AtomicLong requested)
    • tick

      void tick()
      check if we have values for each and emit if we do This will only allow one thread at a time to do the work, but ensures via `counter` increment/decrement that there is always once who acts on each `tick`. Same concept as used in OperationObserveOn.