···11+---
22+"moroutine": minor
33+---
44+55+Graceful async worker pool shutdown
66+77+- `await using run = workers(4)` waits for in-flight tasks to settle before terminating workers
88+- `run.signal` is an `AbortSignal` that fires when the pool starts disposing — thread it into tasks for cooperative cancellation
99+- `workers(size, { shutdownTimeout: ms })` force-terminates workers if graceful shutdown exceeds the timeout
1010+- Existing `using run` (sync dispose) still terminates immediately