Asynchronous enumerations – Part 4: IEnumerable<Task<IEnumerable<T>>>

For background, read the introduction. This is really just a variant of option #2 using the fact that you use azure tables and know that you will get several items at a time. In my opinion you shouldn’t even consider this option since it uses a feature of the underlying storage layer and compared to…

0

Asynchronous enumerations – Part 3: IObservable<T>

For background, read the introduction. In part 2 I briefly mentioned that if you have simple filtering needs then you might implement your own LINQ-like methods. Well if you have more advanced filtering needs there is already something out there to help you; Reactive Extensions (Rx). The only thing you have to do is to…

0

Asynchronous enumerations – Part 2: IEnumerable<Task<T>>

For background, read the introduction. This is essentially the opposite of option #1. With this approach you are optimized for processing one item at a time. Or even process all items in parallel! So this is a very good option if you do not need all your data at once and you also have a…

2

Asynchronous enumerations – Part 1: Task<IEnumerable<T>>

For background, read the introduction. If you need all data before you start processing it or if you expect just a few records each time, then this is probably your simplest way to get an “asynchronous enumeration”. Technically the enumeration is not asynchronous since you retrieve all data asynchronously first and then process it. You…

2