Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Subscriptions Rewrite #661

Merged
merged 8 commits into from
Dec 23, 2013

Conversation

benjchristensen
Copy link
Member

Refactor rewrite of Subscriptions by @headinthebox and myself after reviewing the various different implementations.

  • We removed SingleAssignmentSubscription while trying to reduce surface area and simplify code.
  • Moved to a non-blocking state-machine model that does not lock or busy spin during "mutation states"

- be explicit for error case in JoinObserver
- simplified logic
- remove unnecessary busy spins and state changes
- simplified state machine
- removed busy spin state
- simplified state machine
- simplified state machine
- make concrete implementations final as extending them is dangerous (use composition and implement Subscription instead)
- deprecated long get/setSubscription methods in favor of short verbs (add/get/set/clear/remove)
- updated unit tests with changes
benjchristensen added a commit that referenced this pull request Dec 23, 2013
@benjchristensen benjchristensen merged commit c3bbd89 into ReactiveX:master Dec 23, 2013
@benjchristensen benjchristensen deleted the subscriptions branch December 23, 2013 20:38
@cloudbees-pull-request-builder

RxJava-pull-requests #596 FAILURE
Looks like there's a problem with this pull request

rickbw pushed a commit to rickbw/RxJava that referenced this pull request Jan 9, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants