Should be switched to using ```compare_exchange_strong``` on the ```std::atomic<bool>```.