#pragma once #include #include namespace boost::serialization { template void serialize(Archive& ar, std::atomic& value, const unsigned int file_version) { boost::serialization::split_free(ar, value, file_version); } template void save(Archive& ar, const std::atomic& value, const unsigned int file_version) { ar << value.load(); } template void load(Archive& ar, std::atomic& value, const unsigned int file_version) { T tmp; ar >> tmp; value.store(tmp); } } // namespace boost::serialization