Crate umsh_sync

Crate umsh_sync 

Source
Expand description

Single-threaded async synchronization primitives for UMSH.

  • AsyncCondition — a wake-all condition variable with slab-backed ticketed deregistration.
  • AsyncRefCell — an async-aware RefCell whose borrow() / borrow_mut() futures wait instead of panicking when the cell is in use.

Everything here is no_std + alloc, single-threaded, and executor- agnostic: it works under tokio (with a LocalSet), embassy, or any custom async runtime that polls futures to completion.

Re-exports§

pub use async_condition::AsyncCondition;
pub use async_condition::AsyncConditionTicket;
pub use async_condition::AsyncConditionWait;
pub use async_refcell::AsyncRefCell;
pub use async_refcell::Ref;
pub use async_refcell::RefMut;
pub use async_refcell::ScopedTicket;

Modules§

async_condition
Single-threaded, no_std + alloc port of the AsyncCondition primitive from rust-lumanoi-core (originally under the Fuchsia BSD-style license).
async_refcell
AsyncRefCell<T> — an async-aware RefCell.