concurrent-ruby
concurrent-ruby copied to clipboard
Migrate all abstractions to Synchronisation layer or to edge
Classes using mutex:
- [ ] MVar
- [ ] TVar
- [x] Dereferencable (when is it suppose to be removed?)
Classes with final ivars not using layer:
- [x] Maybe
- [x] Tick
- [ ] possibly others
Removing Dereferencable is a breaking API change. I think 2.0 is the appropriate time.
I've tried to update MVar to use the synchronization layer but the tests fail every time. I haven't explored it deeply.
Anything related to channels (like Tick) can wait. Those are Edge and and need a lot more work before I would recommend using them.