| Crates.io | catty |
| lib.rs | catty |
| version | 0.1.5 |
| created_at | 2020-09-10 10:04:07.283779+00 |
| updated_at | 2022-06-20 07:53:26.300972+00 |
| description | Send and await a value asynchronously |
| homepage | |
| repository | https://github.com/Restioson/catty |
| max_upload_size | |
| id | 286969 |
| size | 27,472 |
Send a value synchronously and asynchronously wait for it. Catty is faster, simpler, and more lightweight than
futures::oneshot, which is slightly more flexible.
let (tx, rx) = catty::oneshot();
tx.send("Hello!");
assert_eq!(rx.await, Ok("Hello!"));
To run the benchmarks with Criterion, simply do cargo bench. On my machine, the results are as follows:
create-futures time: [70.934 ns 70.979 ns 71.045 ns]
create-catty time: [32.549 ns 32.594 ns 32.650 ns]
oneshot-futures time: [146.45 ns 146.76 ns 147.09 ns]
oneshot-catty time: [98.497 ns 99.065 ns 99.686 ns]
send-futures time: [80.163 ns 80.384 ns 80.680 ns]
send-catty time: [39.064 ns 39.206 ns 39.354 ns]