mirror of
https://github.com/RGBCube/serenity
synced 2025-07-23 14:07:42 +00:00
LibThreading: Add is_started state information to Thread
Users can now determine whether a thread has been started or not. A started thread might also have already terminated. Implementation note: We *could* detect this with pthread APIs maybe, but this is much simpler.
This commit is contained in:
parent
500dc83f32
commit
91913fba59
2 changed files with 3 additions and 0 deletions
|
@ -45,6 +45,7 @@ void Threading::Thread::start()
|
|||
VERIFY(rc == 0);
|
||||
}
|
||||
dbgln("Started thread \"{}\", tid = {}", m_thread_name, m_tid);
|
||||
m_started = true;
|
||||
}
|
||||
|
||||
void Threading::Thread::detach()
|
||||
|
|
|
@ -32,6 +32,7 @@ public:
|
|||
|
||||
String thread_name() const { return m_thread_name; }
|
||||
pthread_t tid() const { return m_tid; }
|
||||
bool is_started() const { return m_started; }
|
||||
|
||||
private:
|
||||
explicit Thread(Function<intptr_t()> action, StringView thread_name = {});
|
||||
|
@ -39,6 +40,7 @@ private:
|
|||
pthread_t m_tid { 0 };
|
||||
String m_thread_name;
|
||||
bool m_detached { false };
|
||||
bool m_started { false };
|
||||
};
|
||||
|
||||
template<typename T>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue