Async options in .NET

To demonstrate the different async options in .NET, I wrote the following samples that call the async read methods of the .NET FileStream. The following APM, TPL, and Rx code samples complete in roughly the same amount of time. I am biased to Rx, so, it’s the most elegent code sample of them all. APM sample int count = 0; […]

IEnumerable & IObservable Split ()

Another IObservable<> extension method I needed was Split – just like string.Split (), but generically for any array and an IObservable.

ReverseAsyncRead ()

Rx includes the AsyncRead () method that reads a stream from the beginning returning an IObservable. This method does the same, but in reverse. The public method overloads accept a stream and optionally a bufferSize and startingPosition.