linux版本中间件

SqlWrite.h 541B

1234567891011121314151617181920212223242526272829303132
  1. #pragma once
  2. #include <string>
  3. #include <mutex>
  4. #include <condition_variable>
  5. #include <list>
  6. #include <functional>
  7. class SqlWrite
  8. {
  9. public:
  10. void addSql(const std::string& sql);
  11. static SqlWrite* GetInstance() { return &instance; }
  12. private:
  13. SqlWrite();
  14. SqlWrite(const SqlWrite&);
  15. ~SqlWrite();
  16. SqlWrite& operator = (const SqlWrite&) = default;
  17. void __threadFun();
  18. bool __dealSql();
  19. private:
  20. static SqlWrite instance;
  21. std::list<std::string> m_SqlList;
  22. volatile bool m_Stop;
  23. std::condition_variable con;
  24. std::mutex mut;
  25. };