If there is not a 'std::this_thread::yield();', it will lock the mutex all the time.
I want to change the situation, so I use 'std::this_thread::yield();'
But the situation has not improved!
On Windows, this presumably calls the WinAPI function ::SwitchToThread(), when the possible yield of execution is limited to a single processor: the processor running the calling thread.