Keith Dahlby (@dahlbyk) presented what he had learned about Reactive Extensions.
DevLabs Link: http://msdn.microsoft.com/en-us/devlabs/ee794896.aspx
There are videos on that site, but also look for the PDC presentation: http://microsoftpdc.com/Sessions/VTL04
In this session, Keith ran through the PDC presentation and some examples of how to use Rx (Reaction Extensions) were demoed.
Integration with MassTransit is pending some commits, testing, etc.
Summary: IObservable is the opposite of IEnumerable, instead of pulling "items" out, "items" are pushed to you. Using LINQ with Rx gives you "Real Ultimate Power".
http://themechanicalbride.blogspot.com/2009/07/introducing-rx-linq-to-events.html
http://community.bartdesmet.net/blogs/bart/archive/tags/Rx/default.aspx
http://weblogs.asp.net/podwysocki/ (also includes articles on Rx for JavaScript as well)
Microsoft ported the parallel extensions to .NET 3.5 as well as this library. It is currently being pushed for use with Silverlight and for UI programming, but it will also be used as the core for Microsoft's high powered in-memory event processing system that will be part of SQL Server 2008 R2.
Short list of possible uses:
- Composing events, complex events based on conditions
- AsyncResult programming
- Working with streams
- Service Buses (MassTransit)
- Converting any IEnumerable to a "push" model and back
-
- Take an IObservable, convert to IEnumerable and block to get all the results
- Example Scenarios
-
- watch for 3 bad login attempts on the same account and fire a LockAccount message
- combine events that are received in a particular time into a single event
-
- Useful for MouseMove event tracking
MORE!!!
Note: It'd be awesome if someone could post the code snippets, I didn't copy them down...
The installer comes with full documentation and Reflector can help you with the rest.
This library is useful for building an Event Driven Architecture.
Comments (0)
You don't have permission to comment on this page.