Creating Pattern<T>

The Pattern<T> is an odd kind of message that we can use to create flattened sequences of values sourcing from multiple sources.

As we have already seen in the Combining operators section of Chapter 3, Reactive Extension Programming, we can use the Zip operator to create a single output from multiple sources:

var values2 = Observable.Range(0, 100).Where(x => x % 2 == 0); 
var values3 = Observable.Range(0, 100).Where(x => x % 3 == 0); 
var values5 = Observable.Range(0, 100).Where(x => x % 5 == 0); 
 
//flatten sourcing sequences into a new sequence 
//based on the sourcing message index 
var zip = values2.Zip(values3, values5, (a, b, c) => new { a, b, c }); 
 
Console.WriteLine("Zip:"); 
zip.Subscribe(x => Console.WriteLine(x)); 

Other ...

Get Reactive Programming for .NET Developers now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.