I try to used std::atomic