public static IDisposable Subscribe <T>(this IParallelObservable <T> value, Action <T> onNext, Action <Exception> onError, Action onCompleted) { ParallelObserver <T> observer = new ParallelObserver <T>(onNext, onError, onCompleted); IDisposable subject = value.Subscribe(observer); return(subject); }
public static IDisposable Subscribe <T>(this IParallelObservable <T> value, Action <T> onNext) { ParallelObserver <T> observer = new ParallelObserver <T>(onNext); IDisposable subject = value.Subscribe(observer); return(subject); }
public static IParallelObservable <TSource> WithDegreeOfParallelism <TSource>( this IParallelObservable <TSource> source, int degreeOfParallelism) { ParallelBaseSubject <TSource> parallelsubject = (ParallelBaseSubject <TSource>)source; parallelsubject.DegreeOfParallelism_ = degreeOfParallelism; parallelsubject.BuildScheduler(); return(parallelsubject); }
//public static IParallelObservable<TSource> AsParallel<TSource>( // this IObserver<TSource> source) //{ // ParallelObserver<TSource> parallelObserver = // new ParallelObserver<TSource>(source); // return parallelObserver; //} public static IParallelObservable <TSource> WithExecutionMode <TSource>( this IParallelObservable <TSource> source, ParallelExecutionMode executionMode) { ParallelBaseSubject <TSource> parallelsubject = (ParallelBaseSubject <TSource>)source; parallelsubject.ParallelExecutionMode_ = executionMode; parallelsubject.BuildScheduler(); return(parallelsubject); }
public static IParallelObservable <TSource> WithCancellation <TSource>( this IParallelObservable <TSource> source, CancellationToken cancellationToken ) { ParallelBaseSubject <TSource> parallelsubject = (ParallelBaseSubject <TSource>)source; parallelsubject.CancellationToken_ = cancellationToken; parallelsubject.BuildScheduler(); return(parallelsubject); }
public static IParallelObservable <TSource> WithMergeOptions <TSource>( this IParallelObservable <TSource> source, ParallelMergeOptions mergeOptions ) { ParallelBaseSubject <TSource> parallelsubject = (ParallelBaseSubject <TSource>)source; parallelsubject.ParallelMergeOptions_ = mergeOptions; parallelsubject.BuildScheduler(); return(parallelsubject); }
public void GenerateTest() { IParallelObservable <int> returnObject = ParallelObservable.Generate(1, i => i <= 5, i => i + 1, i => i). WithExecutionMode(ParallelExecutionMode.ForceParallelism); returnObject.Subscribe <int>( x => Console.WriteLine(" {0} ", x), ex => Console.WriteLine("OnError {0}", ex.Message), () => Console.WriteLine("OnCompleted")); }