![]() |
mFrame
|
CMSIS RTX5 執行緒控制器 更多...
#include <CmsisRTX5Thread.h>
公開方法(Public Methods) | |
CmsisRTX5Thread (ufm::func::Runnable &task, uint32 stackSize) | |
建構執行緒物件 | |
CmsisRTX5Thread (ufm::func::Runnable &task, const ufm::lang::Data &stackMemory) | |
建構執行緒物件 | |
virtual | ~CmsisRTX5Thread (void) override |
解構執行緒物件 | |
virtual const char * | getThreadName (void) const override |
取得執行緒名稱 | |
virtual ufm::sys::ThreadPriority | getPriority (void) const override |
取得執行緒優先權 | |
virtual ufm::sys::ThreadState | getState (void) const override |
取得執行緒狀態 | |
virtual int | getStackSize (void) const override |
取得執行緒堆疊大小 | |
virtual bool | start (const char *name, ufm::sys::ThreadPriority priority) override |
以指定名稱和優先權啟動執行緒 | |
virtual void | notify (void) override |
通知執行緒,喚醒等待中的執行緒 | |
virtual bool | setPriority (ufm::sys::ThreadPriority priority) override |
設定執行緒優先權 | |
![]() | |
Thread (void) | |
建構執行緒物件 | |
virtual | ~Thread (void) override |
解構執行緒物件 | |
bool | start (const char *name) |
以預設優先權啟動執行緒 | |
bool | isActive (void) |
檢查執行緒是否處於活動狀態 | |
![]() | |
void * | operator new (size_t n) |
使用運算子 new 分配記憶體 | |
void * | operator new (size_t n, void *p) |
在指定記憶體上調用運算子 new | |
virtual ufm::lang::Object & | getObject (void) override |
取得對應的 Object 物件 | |
void | delay (int milliseconds) const |
延遲指定的毫秒數進行執行緒等待 | |
bool | equals (Object *object) const |
判斷與另一物件是否為相同參照(指標型態比較) | |
bool | equals (Object &object) const |
判斷與另一物件是否為相同參照(參照型態比較) | |
void | wait (void) const |
使當前線程等待直到被通知 | |
bool | wait (int timeout) const |
等待通知或超時 | |
bool | yield (void) const |
讓執行緒讓渡控制權給同優先權的下一個執行緒 | |
int | lock (void) const |
核心鎖定,鎖定期間禁止線程切換 | |
int | unlock (void) const |
核心解鎖 | |
ufm::sys::Thread * | currentThread (void) const |
取得當前執行緒指標 | |
virtual int | hashcode (void) const |
返回對象的哈希碼值。支持這種方法是為了散列表,如HashMap提供的那樣。 | |
![]() | |
virtual | ~Interface (void)=default |
虛擬析構函式 | |
靜態公開方法(Static Public Methods) | |
static CmsisRTX5Thread * | construct (ufm::func::Runnable &task, void *stackMemory, uint32 stackSize) |
建立新的執行緒物件 | |
CMSIS RTX5 執行緒控制器
cmsisrtx5::CmsisRTX5Thread::CmsisRTX5Thread | ( | ufm::func::Runnable & | task, |
uint32 | stackSize ) |
建構執行緒物件
task | 執行任務 |
stackSize | 堆疊大小 |
cmsisrtx5::CmsisRTX5Thread::CmsisRTX5Thread | ( | ufm::func::Runnable & | task, |
const ufm::lang::Data & | stackMemory ) |
建構執行緒物件
task | 執行任務 |
stackMemory | 堆疊記憶體 |
|
static |
|
overridevirtual |
取得執行緒優先權
獲取此執行緒的當前優先權等級,影響調度器對此執行緒的處理優先性。
實作 ufm::sys::Thread.
|
overridevirtual |
|
overridevirtual |
取得執行緒狀態
獲取此執行緒的當前運行狀態,如READY、RUNNING、BLOCKED等。
實作 ufm::sys::Thread.
|
overridevirtual |
|
overridevirtual |
通知執行緒,喚醒等待中的執行緒
將執行緒從等待狀態喚醒,使其可以繼續執行。 若執行緒未處於等待狀態,則此操作無效。
實作 ufm::sys::Thread.
|
overridevirtual |
設定執行緒優先權
動態調整執行緒的優先權等級,影響其在調度時的優先次序。 優先權越高,越容易獲得處理器時間。
priority | 要設定的新優先權 |
實作 ufm::sys::Thread.
|
overridevirtual |
以指定名稱和優先權啟動執行緒
使執行緒開始執行其關聯的Runnable任務。執行緒將被調度器管理, 根據系統負載和優先權進行調度。
name | 執行緒名稱,用於識別 |
priority | 執行緒優先權,決定調度順序 |
實作 ufm::sys::Thread.