spin 0.4.9

Synchronization primitives based on spinning. They may contain data, They are usable without `std` and static initializers are available.
Documentation
extern crate spin;

fn main() {
    let mutex = spin::Mutex::new(42);
    println!("{:?}", mutex);
    {
        let x = mutex.lock();
        println!("{:?}, {:?}", mutex, *x);
    }

    let rwlock = spin::RwLock::new(42);
    println!("{:?}", rwlock);
    {
        let x = rwlock.read();
        println!("{:?}, {:?}", rwlock, *x);
    }
    {
        let x = rwlock.write();
        println!("{:?}, {:?}", rwlock, *x);
    }
}