Closes this and waits for all queued and running work to complete.
After this function is called, new acquire attempts are rejected with dex_error_semaphore_closed.
The returned future resolves to `true` once all outstanding pending acquire futures and held permits are complete. Existing permit holders must still eventually release.
| this |
a `DexLimiter` |
|
a [class@Dex.Future] that resolves to `true` |