Revert using a relaxed load before test_and_set; not necessary, and slower, with a proper yielding strategy as opposed to just pause-spinning

This commit is contained in:
Peter Dimov
2020-06-10 18:20:33 +03:00
parent d35cf29b99
commit 8d79ceaf8a

View File

@ -36,7 +36,7 @@ public:
bool try_lock()
{
return __atomic_load_n( &v_, __ATOMIC_RELAXED ) == 0 && __atomic_test_and_set( &v_, __ATOMIC_ACQUIRE ) == 0;
return __atomic_test_and_set( &v_, __ATOMIC_ACQUIRE ) == 0;
}
void lock()