use std::atomic load() and store()