20 lines
347 B
Markdown
20 lines
347 B
Markdown
# access-cell
|
|
A synchronous, single-threaded Mutex<T> anti-locking system
|
|
|
|
```rust
|
|
let value = Arc::new(AccessCell::new(0));
|
|
|
|
value.access({
|
|
let value = value.clone();
|
|
|
|
move |_| {
|
|
// normally this would cause a deadlock
|
|
value.access(|v| {
|
|
*v = 10;
|
|
})
|
|
}
|
|
});
|
|
|
|
assert_eq!(*value.access_ref(), 10);
|
|
```
|