Files
ylib/include/yutil/counter.hpp
2024-05-09 19:01:40 +08:00

18 lines
380 B
C++

#pragma once
#include <mutex>
namespace ylib {
template<typename T>
class counter{
public:
counter(const T& default_value = 0){m_value = default_value;}
~counter() {}
T make(){
std::unique_lock<std::mutex> guard(m_mutex);
return ++m_value;
}
private:
T m_value;
std::mutex m_mutex;
};
}