|
2 | 2 |
|
3 | 3 | ## Unreleased
|
4 | 4 |
|
5 |
| - - `Async::Notification#signal` now returns `true` if a task was signaled, `false` otherwise, providing better feedback for notification operations. |
| 5 | + - `Async::Notification#signal` now returns `true` if a task was signaled, `false` otherwise, providing better feedback for notification operations. |
6 | 6 |
|
7 |
| -### Async::Barrier Improvements |
| 7 | +### `Async::Barrier` Improvements |
8 | 8 |
|
9 | 9 | `Async::Barrier` now provides more flexible and predictable behavior for waiting on task completion:
|
10 | 10 |
|
|
43 | 43 |
|
44 | 44 | This makes `Async::Barrier` a superset of `Async::Waiter` functionality, providing more flexible task coordination patterns.
|
45 | 45 |
|
46 |
| -### Queue Closing Functionality |
| 46 | +### Introduce `Async::Queue#close` |
47 | 47 |
|
48 |
| -`Async::Queue` and `Async::LimitedQueue` now support closing, which provides better resource management and error handling: |
| 48 | +`Async::Queue` and `Async::LimitedQueue` can now be closed, which provides better resource management and error handling: |
49 | 49 |
|
50 | 50 | - **New `close` method**: Both queue types now have a `close` method that prevents further items from being added and signals any waiting tasks.
|
51 | 51 | - **Consistent error handling**: All queue modification methods (`push`, `enqueue`, `<<`) now raise `Async::Queue::ClosedError` when called on a closed queue.
|
|
106 | 106 |
|
107 | 107 | ### Flexible Timeouts
|
108 | 108 |
|
109 |
| -When {ruby Async::Scheduler\#with\_timeout} is invoked with a block, it can receive a {ruby Async::Timeout} instance. This allows you to adjust or cancel the timeout while the block is executing. This is useful for long-running tasks that may need to adjust their timeout based on external factors. |
| 109 | +When `Async::Scheduler#with_timeout` is invoked with a block, it can receive a `Async::Timeout` instance. This allows you to adjust or cancel the timeout while the block is executing. This is useful for long-running tasks that may need to adjust their timeout based on external factors. |
110 | 110 |
|
111 | 111 | ``` ruby
|
112 | 112 | Async do
|
@@ -180,7 +180,7 @@ To take advantage of this feature, you will need to introduce your own `config/t
|
180 | 180 |
|
181 | 181 | ## v2.19.0
|
182 | 182 |
|
183 |
| -### Async::Scheduler Debugging |
| 183 | +### `Async::Scheduler` Debugging |
184 | 184 |
|
185 | 185 | Occasionally on issues, I encounter people asking for help and I need more information. Pressing Ctrl-C to exit a hung program is common, but it usually doesn't provide enough information to diagnose the problem. Setting the `CONSOLE_LEVEL=debug` environment variable will now print additional information about the scheduler when you interrupt it, including a backtrace of the current tasks.
|
186 | 186 |
|
|
0 commit comments