From c649f061c72af454199c5a2a9148c4867703da80 Mon Sep 17 00:00:00 2001 From: Christian Cunningham Date: Fri, 26 Aug 2022 18:21:37 -0700 Subject: Use lock --- src/sync.rs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/sync.rs') diff --git a/src/sync.rs b/src/sync.rs index 38cffc8..18fc912 100644 --- a/src/sync.rs +++ b/src/sync.rs @@ -122,11 +122,11 @@ impl interface::Mutex for SpinLock { fn lock<'a, R>(&'a self, f: impl FnOnce(&'a mut T) -> R) -> R { loop { // Loop until acquired the lock - if let Ok(false) = - self.lock - .compare_exchange(false, true, Ordering::Acquire, Ordering::Relaxed) + match self.lock + .compare_exchange(false, true, Ordering::Acquire, Ordering::Relaxed) { - break; + Ok(_) => { break; } + _ => {} } } let data = unsafe { &mut *self.data.get() }; -- cgit v1.2.1