Browse Source

Make semaphore always sched_yield

Jeremy Soller 2 years ago
parent
commit
e7b6252bd3
1 changed files with 2 additions and 1 deletions
  1. 2 1
      src/sync/semaphore.rs

+ 2 - 1
src/sync/semaphore.rs

@@ -29,7 +29,8 @@ impl Semaphore {
         }
         loop {
             while self.lock.load(Ordering::Acquire) < 1 {
-                spin_loop();
+                //spin_loop();
+                Sys::sched_yield();
             }
             let tmp = self.lock.fetch_sub(1, Ordering::AcqRel);
             if tmp >= 1 {