#ifndef THREAD_H #define THREAD_H #include #include #include class MThread { public: MThread(); virtual ~MThread(); std::thread::id getId(); void start(); void detach(); void stop(); void join(); void sleep(int sec); bool isStoped(); virtual void run() = 0; private: std::atomic stopState; std::thread th; }; #endif