| H A D | linux.cpp | 108 enum State : u32 { Unlocked = 0, Locked = 1, Sleeping = 2 }; in tryLock() 122 if (V != Sleeping) in lockSlow() 123 V = atomic_exchange(&M, Sleeping, memory_order_acquire); 125 syscall(SYS_futex, reinterpret_cast<uptr>(&M), FUTEX_WAIT_PRIVATE, Sleeping, in unlock() 127 V = atomic_exchange(&M, Sleeping, memory_order_acquire); in unlock() 103 enum State : u32 { Unlocked = 0, Locked = 1, Sleeping = 2 }; global() enumerator
|