根据具体的数量无扩展并行处理(Reactive Extensions Parallel proces

2019-07-29 00:27发布

我是新来的反应性的扩展。 我有对象收集和调用一个方法为每个对象和方法返回布尔值。 代替通过每个通过使用对于每个环和调用该方法的循环的,有没有在反应性扩展的方式来同时呼叫(fork和join)的制造方法为对象(例如5以时间)给定数目和后第一个处理完毕,第六届应该调用方法,它应该继续下去,直到所有的对象都做了。

我很欣赏你的反应。

Answer 1:

IObservable<bool> someBoolAsyncMethod(SomeObject o)

someCollection.ToObservable()
    .Select(x => Observable.Defer(() => 
        someBoolAsyncMethod(x).Select(y => new { Item = x, Result = y})))
    .Merge(5)
    .ToList()
    .Subscribe(newListOfBools);


文章来源: Reactive Extensions Parallel processing based on specific number