1个不稳定版本
使用旧的Rust 2015
0.1.0 | 2018年4月28日 |
---|
#19 in #locks
在flexible-locks中使用
7KB
115 代码行
灵活锁的定制Derive
此crate提供用于描述可以包裹在Flexible Locks类型中的类型的特质的自定义derive。
目前,Flexible Locks仅提供一个Mutex
类型,因此此crate提供了一个#[derive)]
。
使用#[mutex]
属性来指示包含原始互斥类型的数据字段。
示例
extern crate flexible_locks;
#[macro_use]
extern crate flexible_locks_derive;
use flexible_locks::{Mutex, RawMutex};
// Pick your choice of raw mutex;
#[cfg(windows)]
use flexible_locks::CRITICAL_SECTION as RawOsMutex;
#[cfg(unix)]
use flexible_locks::pthread_mutex_t as RawOsMutex;
#[derive(MutexProtected)]
struct Data {
a: usize,
#[mutex]
mutex: RawOsMutex,
b: usize,
}
依赖关系
~2MB
~47K SLoC