示例#1
0
            public void OnNext(TSource value)
            {
                var res = false;

                try
                {
                    res = _parent._predicate(value);
                }
                catch (Exception ex)
                {
                    base._observer.OnError(ex);
                    base.Dispose();
                    return;
                }

                if (res)
                {
                    base._observer.OnNext(true);
                    base._observer.OnCompleted();
                    base.Dispose();
                }
            }
            public void OnNext(TSource value)
            {
                // The sentry
                var res = false;

                try
                {
                    res = _parent._predicate(value);
                }
                catch (Exception ex)
                {
                    base._observer.OnError(ex);
                    base.Dispose();
                    return;
                }

                // 根据 sentry 的监视结果, 发现符合 predicate 条件的元素立刻赋值Obsever为true,结束观察。
                if (res)
                {
                    base._observer.OnNext(true);
                    base._observer.OnCompleted();
                    base.Dispose();
                }
            }