X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=lightning%2Fsrc%2Futil%2Ffairrwlock.rs;h=5715a8cf646cd67e29b7aa5c21c8722d89a45964;hb=31b0a13158b256b3261f32bb349569d043a65b11;hp=8dd74f2b53dc1697b5c8d4ad2e22eb231c84ba4e;hpb=ae4ceb71a584f0aa9e0c1a14a6219d87f1668eba;p=rust-lightning diff --git a/lightning/src/util/fairrwlock.rs b/lightning/src/util/fairrwlock.rs index 8dd74f2b..5715a8cf 100644 --- a/lightning/src/util/fairrwlock.rs +++ b/lightning/src/util/fairrwlock.rs @@ -1,4 +1,4 @@ -use std::sync::{TryLockResult, 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 @@ -32,10 +32,6 @@ impl FairRwLock { res } - pub fn try_write(&self) -> TryLockResult> { - self.lock.try_write() - } - pub fn read(&self) -> LockResult> { if self.waiting_writers.load(Ordering::Relaxed) != 0 { let _write_queue_lock = self.lock.write(); @@ -47,4 +43,8 @@ impl FairRwLock { // codebase. self.lock.read() } + + pub fn try_write(&self) -> TryLockResult> { + self.lock.try_write() + } }