Crate of the Week

Self-nomination: named-sem. This is a wrapper for named semaphore in Linux & Windows.

Example:

let mut semaphore = NamedSemaphore::create("/my-semaphore", 3)?;

semaphore.wait_then_post(|| {
    do_heavy_things();
})?;