public IDisposable Run() { SingleAssignmentDisposable singleAssignmentDisposable = new SingleAssignmentDisposable(); TakeUntilOther observer = new TakeUntilOther(this, singleAssignmentDisposable); singleAssignmentDisposable.Disposable = parent.other.Subscribe(observer); IDisposable disposable = parent.source.Subscribe(this); return(StableCompositeDisposable.Create(singleAssignmentDisposable, disposable)); }
public IDisposable Run() { var otherSubscription = new SingleAssignmentDisposable(); var otherObserver = new TakeUntilOther(this, otherSubscription); otherSubscription.Disposable = parent.other.Subscribe(otherObserver); var sourceSubscription = parent.source.Subscribe(this); return(StableCompositeDisposable.Create(otherSubscription, sourceSubscription)); }