you would create a scheduler that derives from VirtualScheduler, give it two type parameters that implement the absolute and relative part of your notion of time. For this to work, your notion of time will need to be able to :
Convert your notion of absolute time to DateTimeOffset
Convert TimeSpan to your notion of relative time
Increment your notion of absolute time with your notion of relative time to produce a new instance of your notion of absolute time.
In our team we use a checkin system popular inside Microsoft that does verification before checkin. Source changes get packaged up, send to a server. The server kicks off a build with the code changes, starts up a bunch of vms, installs the product and runs
test on it. Only if everything passes the code is checked in by the server.
In this system adding pex is very easy as you can write test scripts in any (scripting) language you want as long as there is a commandline to execute. Not sure how much work it would be to get it going in TFS...
That's actually what CombineLatest does. We're missing one that will not duplicate but does take the latest unused value (cache of one, with consumption), will talk to Wes and Erik to see if that would be a useful operator...
Rx allows all of the above options. It really depends on what you're looking for. option 1 would be the default behavior. if you had used a AsyncSubject or ReplaySubject, you could get option 3. option 1 and 4 you'd have to implement manually using Observable.Create.
All Rx combinators have non-blocking subscribe, so OnNext is called on the SynchronizationContext. For Return's case this means that if you subscribe on the thread owning the SynchronizationContext you're guaranteed to be called after Subscribe returns,
or if you're calling from a different thread, you're called either during or after your call to subscribe. In the first case, calling Dispose should guarantee not to make the OnNext call, where the latter you might or might not succeed to cancel subscription.
Sounds like you have the June 2008 CTP version of Pfx installed on your machine, their version number was 1.0.3058.34407. Try going through your installed program list to see if it is still there by anychance and uninstall that before installing Rx...