in SpinLock::lock () - do std::this_thread::yield () if fails to lock first time. Not a no brainer cuz increases code size, but better 'failure mode' when spins fail