コード例 #1
0
        internal static void Subscribe(ICompletableObserver observer, ICompletableSource[] sources, int n)
        {
            if (n == 0)
            {
                DisposableHelper.Complete(observer);
                return;
            }
            if (n == 1)
            {
                sources[0].Subscribe(observer);
                return;
            }

            var parent = new AmbDisposable(observer, n);

            observer.OnSubscribe(parent);

            var co = parent.observers;

            for (int i = 0; i < n; i++)
            {
                if (!parent.IsDisposed())
                {
                    sources[i].Subscribe(co[i]);
                }
            }
        }
コード例 #2
0
 public AmbObserver(AmbDisposable parent, int index)
 {
     this.parent = parent;
     this.index  = index;
 }