mirror of
https://github.com/embassy-rs/embassy.git
synced 2024-11-22 14:53:03 +00:00
6a4ac5bd60
This makes location info in defmt logs point to the code calling the macro, instead of always to fmt.rs as before. Fix works with nightlies starting with today's, and stable 1.81+. |
||
---|---|---|
.. | ||
src | ||
build_common.rs | ||
build.rs | ||
Cargo.toml | ||
CHANGELOG.md | ||
README.md |
embassy-sync
An Embassy project.
Synchronization primitives and data structures with async support:
Channel
- A Multiple Producer Multiple Consumer (MPMC) channel. Each message is only received by a single consumer.PriorityChannel
- A Multiple Producer Multiple Consumer (MPMC) channel. Each message is only received by a single consumer. Higher priority items are shifted to the front of the channel.PubSubChannel
- A broadcast channel (publish-subscribe) channel. Each message is received by all consumers.Signal
- Signalling latest value to a single consumer.Mutex
- Mutex for synchronizing state between asynchronous tasks.Pipe
- Byte stream implementingembedded_io
traits.WakerRegistration
- Utility to register and wake aWaker
.AtomicWaker
- A variant ofWakerRegistration
accessible using a non-mut API.MultiWakerRegistration
- Utility registering and waking multipleWaker
's.
Interoperability
Futures from this crate can run on any executor.