public static IDisposable SubscribeAsyncConcurrent <T>(this IObservable <T> source, IObserverAsync <T> observer, int maxConcurrent) => source .Select(number => Observable.FromAsync(async() => { await observer.OnNext(number); })) .Merge(maxConcurrent) .Subscribe();
public static IDisposable SubscribeAsync <T>(this IObservable <T> source, IObserverAsync <T> observer) => source .Select(number => Observable.FromAsync(async() => { await observer.OnNext(number); })) .Concat() .Subscribe();