CThread.cpp 524 B

1234567891011121314151617181920212223242526272829
  1. #include <AK/Assertions.h>
  2. #include <LibCore/CEventLoop.h>
  3. #include <LibCore/CThread.h>
  4. #include <stdio.h>
  5. #include <stdlib.h>
  6. #include <unistd.h>
  7. CThread& CThread::main_thread()
  8. {
  9. static CThread* main_thread;
  10. if (!main_thread)
  11. main_thread = new CThread(MainThread);
  12. return *main_thread;
  13. }
  14. CThread::CThread(MainThreadTag)
  15. : m_thread_id(0)
  16. {
  17. }
  18. CThread::CThread(int (*entry)(void*), void* user_data)
  19. {
  20. ASSERT(entry);
  21. m_thread_id = create_thread(entry, user_data);
  22. }
  23. CThread::~CThread()
  24. {
  25. }