Crates.io | atomic-waitgroup |
lib.rs | atomic-waitgroup |
version | 0.1.3 |
source | src |
created_at | 2024-05-10 05:16:25.545972 |
updated_at | 2024-05-10 06:18:51.113164 |
description | A waitgroup implementation supports async with advanced features |
homepage | |
repository | https://github.com/frostyplanet/atomic-waitgroup-rs/ |
max_upload_size | |
id | 1235702 |
size | 17,636 |
A waitgroup support async with advanced features, implemented with atomic operations to reduce locking in mind.
wait_to() is supported to wait for a value larger than zero.
wait() & wait_to() can be canceled by tokio::time::timeout or futures::select!.
Assumes only one thread calls wait(). If multiple concurrent wait() is detected, will panic for this invalid usage.
done() can be called by multiple coroutines other than the one calls wait().