|
3 | 3 | [](http://badge.fury.io/rb/concurrent-ruby)
|
4 | 4 | [](https://travis-ci.org/ruby-concurrency/concurrent-ruby)
|
5 | 5 | [](https://ci.appveyor.com/project/rubyconcurrency/concurrent-ruby)
|
6 |
| -[](http://inch-ci.org/github/ruby-concurrency/concurrent-ruby) |
7 | 6 | [](http://opensource.org/licenses/MIT)
|
8 | 7 | [-devs%20%26%20users-brightgreen.svg)](https://gitter.im/ruby-concurrency/concurrent-ruby)
|
9 | 8 |
|
@@ -52,11 +51,19 @@ We also have a [mailing list](http://groups.google.com/group/concurrent-ruby) an
|
52 | 51 | #### General-purpose Concurrency Abstractions
|
53 | 52 |
|
54 | 53 | * [Async](http://ruby-concurrency.github.io/concurrent-ruby/Concurrent/Async.html): A mixin module that provides simple asynchronous behavior to a class. Loosely based on Erlang's [gen_server](http://www.erlang.org/doc/man/gen_server.html).
|
55 |
| -* [Future](http://ruby-concurrency.github.io/concurrent-ruby/Concurrent/Future.html): An asynchronous operation that produces a value. |
56 |
| - * [Dataflow](http://ruby-concurrency.github.io/concurrent-ruby/Concurrent.html#dataflow-class_method): Built on Futures, Dataflow allows you to create a task that will be scheduled when all of its data dependencies are available. |
57 |
| -* [Promise](http://ruby-concurrency.github.io/concurrent-ruby/Concurrent/Promise.html): Similar to Futures, with more features. |
58 | 54 | * [ScheduledTask](http://ruby-concurrency.github.io/concurrent-ruby/Concurrent/ScheduledTask.html): Like a Future scheduled for a specific future time.
|
59 | 55 | * [TimerTask](http://ruby-concurrency.github.io/concurrent-ruby/Concurrent/TimerTask.html): A Thread that periodically wakes up to perform work at regular intervals.
|
| 56 | +* [Promises Framework](http://ruby-concurrency.github.io/concurrent-ruby/Concurrent/Promises.html): |
| 57 | + Unified implementation of futures and promises which combines features of previous `Future`, |
| 58 | + `Promise`, `IVar`, `Event`, `dataflow`, `Delay`, and (partially) `TimerTask` into a single framework. It extensively uses the |
| 59 | + new synchronization layer to make all the features **non-blocking** and **lock-free**, with the exception of obviously blocking |
| 60 | + operations like `#wait`, `#value`. It also offers better performance. |
| 61 | + |
| 62 | +Deprecated: |
| 63 | + |
| 64 | +* ~~[Future](http://ruby-concurrency.github.io/concurrent-ruby/Concurrent/Future.html): An asynchronous operation that produces a value.~~ |
| 65 | + * ~~[Dataflow](http://ruby-concurrency.github.io/concurrent-ruby/Concurrent.html#dataflow-class_method): Built on Futures, Dataflow allows you to create a task that will be scheduled when all of its data dependencies are available.~~ |
| 66 | +* ~~[Promise](http://ruby-concurrency.github.io/concurrent-ruby/Concurrent/Promise.html): Similar to Futures, with more features.~~ |
60 | 67 |
|
61 | 68 | #### Thread-safe Value Objects, Structures, and Collections
|
62 | 69 |
|
@@ -115,13 +122,6 @@ These features are under active development and may change frequently. They are
|
115 | 122 | keep backward compatibility (there may also lack tests and documentation). Semantic versions will
|
116 | 123 | be obeyed though. Features developed in `concurrent-ruby-edge` are expected to move to `concurrent-ruby` when final.
|
117 | 124 |
|
118 |
| -* [Promises Framework](http://ruby-concurrency.github.io/concurrent-ruby/Concurrent/Promises.html): |
119 |
| - Unified implementation of futures and promises which combines features of previous `Future`, |
120 |
| - `Promise`, `IVar`, `Event`, `dataflow`, `Delay`, and `TimerTask` into a single framework. It extensively uses the |
121 |
| - new synchronization layer to make all the features **non-blocking** and **lock-free**, with the exception of |
122 |
| - obviously blocking operations like `#wait`, `#value`. It also offers better performance. |
123 |
| - Status: The framework is being finalized so it can be moved to core. It will eventually replace old implementations |
124 |
| - it replaces. |
125 | 125 | * [Actor](http://ruby-concurrency.github.io/concurrent-ruby/Concurrent/Actor.html):
|
126 | 126 | Implements the Actor Model, where concurrent actors exchange messages.
|
127 | 127 | Status: Partial documentation and tests; depends on new future/promise framework; stability is good.
|
|
0 commit comments