Reactive Extensions API in depth: even more Zip
- Posted: Dec 09, 2009 at 9:31 AM
- 40,290 Views
- 5 Comments
Loading User Information from Channel 9
Something went wrong getting user information from Channel 9
Loading User Information from MSDN
Something went wrong getting user information from MSDN
Loading Visual Studio Achievements
Something went wrong getting the Visual Studio Achievements
Right click “Save as…”
Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation,
please create a new thread in our Forums,
or
Contact Us and let us know.
Follow the Discussion
Oops, something didn't work.
What does this mean?
Following an item on Channel 9 allows you to watch for new content and comments that you are interested in. You need to be signed in to Channel 9 to use this feature.What does this mean?
Following an item on Channel 9 allows you to watch for new content and comments that you are interested in and view them all on your notifications page.sign up for email notifications?
Rx is very interest. But these 2 videos on Zip were very uninforming.
Please, show us some code, go deep, show us how to use it in code!
Cool short videos on Rx framework.
What I find odd about Zip operator is that the combination of error and infinite stream does not result in error. This seems not coherent with Merge operator.
Clearly that was a mistake in the presentation. The only time Zip would never produce a value is if either stream stops producing values and never trigger done or error (it could also be that both enter this state). Furthermore, there is a race condition between done and error during zipping which makes the outcome unpredictable. It all depends on which event is observed first (done or error).
Please post a follow up video to this to correct this one. Thanks!
I think Bjorg is correct, wouldn't Zip throw an error in the case of ┴ and an exception?
Observable.Throw<int>(new InvalidDocumentationException("Video error")) .Zip(Observable.Never<int>(), (lhs, rhs) => new {Left = lhs, Right = rhs}) .Subscribe(Console.WriteLine, ex => Console.WriteLine(ex), () => Console.WriteLine("Completed.")); Console.ReadLine();Remove this comment
Remove this thread
close