diff options
Diffstat (limited to 'src/components/include/utils/threads/thread.h')
-rw-r--r-- | src/components/include/utils/threads/thread.h | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/components/include/utils/threads/thread.h b/src/components/include/utils/threads/thread.h index fd2b5e9fd9..c81b912e9a 100644 --- a/src/components/include/utils/threads/thread.h +++ b/src/components/include/utils/threads/thread.h @@ -119,12 +119,11 @@ class Thread { return delegate_lock_; } - ThreadDelegate *delegate() const { + ThreadDelegate* delegate() const { return delegate_; } - void set_delegate(ThreadDelegate *delegate) { - DCHECK(!isThreadRunning_); + void set_delegate(ThreadDelegate* delegate) { delegate_ = delegate; } @@ -132,6 +131,9 @@ class Thread { friend void DeleteThread(Thread* thread); public: + // Yield current thread + static void yield(); + // Get unique ID of currently executing thread static PlatformThreadHandle CurrentId(); @@ -195,6 +197,12 @@ class Thread { } /** + * @brief Checks if invoked in this Thread context + * @return True if called from this Thread class, false otherwise + */ + bool IsCurrentThread() const; + + /** * @brief Thread options. * @return thread options. */ |