#pragma once #include #include #include class ExecTask { public: ExecTask(); ~ExecTask(); bool SetRunTime(const std::string&strStart, const std::string&strEnd); protected: virtual void onConsumChange(const bool&bConsum) = 0; void dealTask(const std::string&strMessage); private: void __run(); private: std::unique_ptr pListenThread; bool m_bStopThread; std::atomic_bool m_bIsDeal; std::string m_startTime; std::string m_endTime; };