#sync #channel #local #futures #local-channel

local-sync

Non-threadsafe data structure for async usage

1 unstable release

Uses new Rust 2021

0.0.5 Dec 2, 2021
0.0.4 Dec 2, 2021
0.0.3 Nov 30, 2021
0.0.2 Nov 11, 2021
0.0.1 Oct 18, 2021

#230 in Concurrency

Download history 10/week @ 2021-10-13 6/week @ 2021-10-20 1/week @ 2021-10-27 1/week @ 2021-11-03 20/week @ 2021-11-10 4/week @ 2021-11-17 24/week @ 2021-11-24 133/week @ 2021-12-01 140/week @ 2021-12-08 58/week @ 2021-12-15 34/week @ 2021-12-22 49/week @ 2021-12-29 9/week @ 2022-01-05 12/week @ 2022-01-12 20/week @ 2022-01-19

92 downloads per month
Used in 2 crates

MIT/Apache

110KB
2K SLoC

local-sync

Local-sync is a crate providing data structures for sync within the local thread.

mpsc

Mpsc includes bounded and unbounded channel.

Once Cell

Once cell like once in golang.

Oneshot

Oneshot channel which can be send and receive data only one time. Also, it can be used as a notification method.

Semaphore

You can async wait permits and add permits with Semaphore.

Licenses

Local-sync is licensed under the MIT license or Apache license.

During developing we referenced a lot from Tokio. We would like to thank the authors of the projects.


lib.rs:

Local Sync is a crate that providing non-thread-safe data structures useful for async programming. If you use a runtime with thread-per-core model(for example the Monoio), you may use this crate to avoid the cost of communicating across threads.

Dependencies

~720KB
~14K SLoC