Thread.h 428 B

12345678910111213141516171819202122232425
  1. #pragma once
  2. #include <AK/Function.h>
  3. #include <AK/String.h>
  4. #include <LibCore/CObject.h>
  5. namespace LibThread {
  6. class Thread final : public CObject {
  7. C_OBJECT(Thread);
  8. public:
  9. explicit Thread(Function<int()> action, StringView thread_name = nullptr);
  10. virtual ~Thread();
  11. void start();
  12. void quit(int code = 0);
  13. private:
  14. Function<int()> m_action;
  15. int m_tid { -1 };
  16. String m_thread_name;
  17. };
  18. }