X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=lightning%2Fsrc%2Futil%2Ffairrwlock.rs;h=5715a8cf646cd67e29b7aa5c21c8722d89a45964;hb=abf4e79dcda4c97dd80dd00233de32507184543a;hp=c9b3866bec5c837e948b3a7f469515ed4b9b79f4;hpb=a5629e5ca2a7b089ac2a15f61f9549c2ebfcc608;p=rust-lightning diff --git a/lightning/src/util/fairrwlock.rs b/lightning/src/util/fairrwlock.rs index c9b3866b..5715a8cf 100644 --- a/lightning/src/util/fairrwlock.rs +++ b/lightning/src/util/fairrwlock.rs @@ -1,4 +1,4 @@ -use std::sync::{LockResult, RwLock, RwLockReadGuard, RwLockWriteGuard}; +use std::sync::{LockResult, RwLock, RwLockReadGuard, RwLockWriteGuard, TryLockResult}; use std::sync::atomic::{AtomicUsize, Ordering}; /// Rust libstd's RwLock does not provide any fairness guarantees (and, in fact, when used on @@ -43,4 +43,8 @@ impl FairRwLock { // codebase. self.lock.read() } + + pub fn try_write(&self) -> TryLockResult> { + self.lock.try_write() + } }