@@ -105,6 +105,7 @@ Derived from Ruby's [Struct](http://ruby-doc.org/core-2.2.0/Struct.html):
105
105
* [ Thread-local variables] ( http://ruby-concurrency.github.io/concurrent-ruby/Concurrent/ThreadLocalVar.html )
106
106
* [ Software transactional memory] ( http://ruby-concurrency.github.io/concurrent-ruby/Concurrent/TVar.html ) (TVar)
107
107
* [ ReadWriteLock] ( http://ruby-concurrency.github.io/concurrent-ruby/Concurrent/ReadWriteLock.html )
108
+ * [ ReentrantReadWriteLock] ( http://ruby-concurrency.github.io/concurrent-ruby/Concurrent/ReentrantReadWriteLock.html )
108
109
109
110
### Edge Features
110
111
@@ -127,7 +128,8 @@ be obeyed though. Features developed in `concurrent-ruby-edge` are expected to m
127
128
* [ Exchanger] ( http://ruby-concurrency.github.io/concurrent-ruby/Concurrent/Exchanger.html )
128
129
* [ LazyRegister] ( http://ruby-concurrency.github.io/concurrent-ruby/Concurrent/LazyRegister.html )
129
130
* [ Atomic Markable Reference] ( http://ruby-concurrency.github.io/concurrent-ruby/Concurrent/Edge/AtomicMarkableReference.html )
130
- * [ Lock Free Linked Set] ( http://ruby-concurrency.github.io/concurrent-ruby/Concurrent/Edge/LockFreeLinkedSet.html )
131
+ * [ LockFreeLinked Set] ( http://ruby-concurrency.github.io/concurrent-ruby/Concurrent/Edge/LockFreeLinkedSet.html )
132
+ * [ LockFreeStack] ( http://ruby-concurrency.github.io/concurrent-ruby/Concurrent/Edge/LockFreeStack.html )
131
133
132
134
#### Statuses:
133
135
@@ -139,8 +141,7 @@ be obeyed though. Features developed in `concurrent-ruby-edge` are expected to m
139
141
- ** Channel** - Missing documentation; limted features; stability good.
140
142
- ** Exchanger** - Known race condition requiring a new implementation.
141
143
- ** LazyRegister** - Missing documentation and tests.
142
- - ** AtomicMarkableReference** - Needs real world battle testing
143
- - ** LockFreeLinkedSet** - Needs real world battle testing
144
+ - ** AtomicMarkableReference, LockFreeLinkedSet, LockFreeStack** - Needs real world battle testing
144
145
145
146
## Usage
146
147
@@ -184,8 +185,6 @@ require 'concurrent/actor' # Concurrent::Actor and supporting code
184
185
require ' concurrent/edge/future' # new Future Framework
185
186
require ' concurrent/agent' # Concurrent::Agent
186
187
require ' concurrent/channel ' # Concurrent::Channel and supporting code
187
- require ' concurrent/exchanger' # Concurrent::Exchanger
188
- require ' concurrent/lazy_register' # Concurrent::LazyRegister
189
188
```
190
189
191
190
If the library does not behave as expected, ` Concurrent.use_stdlib_logger(Logger::DEBUG) ` could help to reveal the problem.
0 commit comments