|
XWOS API
4.0
XWOS C/C++ API参考手册
|
静态线程 更多...
#include <SThd.hxx>

Public 成员函数 | |
| SThd (const char *name, xwstk_t *stack, xwsz_t stack_size, xwsz_t stack_guard_size=XWOS_STACK_GUARD_SIZE_DEFAULT, xwpr_t priority=XWOS_SKD_PRIORITY_RT_MIN, bool detached=false, bool privileged=true) | |
| 静态线程构造函数 | |
| ~SThd () | |
| xwer_t | getCtorRc () |
| xwer_t | getStackInfo (struct xwos_thd_stack_info *stack) |
| 获取当前线程的栈信息 | |
| xwer_t | intr () |
| 中断线程的阻塞态和睡眠态 | |
| xwer_t | quit () |
| 通知线程退出 | |
| xwer_t | join (xwer_t *trc) |
| 等待线程结束并获取它的返回值 | |
| xwer_t | stop (xwer_t *trc) |
| 通知线程退出,等待线程结束并获取它的返回值 | |
| xwer_t | detach () |
| 终止线程并等待它退出 | |
| struct xwos_thd * | getXwosObj () |
| 获取XWOS对象指针 | |
| xwer_t | grab () |
| xwer_t | put () |
Protected 成员函数 | |
| virtual xwer_t | thdMainFunction () |
| 线程主函数,用户需要重新实现此函数 | |
| void | yield () |
| 当前线程通知调度器重新调度 | |
| void | exit (xwer_t rc) |
| 退出当前线程 | |
| bool | shouldFreeze () |
| 判断当前线程是否可被冻结 | |
| bool | shouldStop () |
| 判断当前线程是否可以退出 | |
| xwer_t | sleep (xwtm_t dur) |
| 当前线程睡眠一段时间 | |
| xwer_t | sleepTo (xwtm_t to) |
| 当前线程睡眠到一个时间点 | |
| xwer_t | sleepFrom (xwtm_t *from, xwtm_t dur) |
| 当前线程从一个时间起点睡眠到另一个时间点 | |
| xwer_t | freeze (void) |
| 冻结当前线程 | |
Private 成员函数 | |
| void | operator delete (void *obj)=delete |
静态 Private 成员函数 | |
| static xwer_t | sThdMainFunction (SThd *thd) |
| static void * | operator new (xwsz_t sz)=delete |
Private 属性 | |
| xwos_thd_d | mThdDesc |
| struct xwos_thd | mThd |
| xwer_t | mCtorRc |
| xwos::SThd::SThd | ( | const char * | name, |
| xwstk_t * | stack, | ||
| xwsz_t | stack_size, | ||
| xwsz_t | stack_guard_size = XWOS_STACK_GUARD_SIZE_DEFAULT, |
||
| xwpr_t | priority = XWOS_SKD_PRIORITY_RT_MIN, |
||
| bool | detached = false, |
||
| bool | privileged = true |
||
| ) |
静态线程构造函数
| [in] | name | 线程名 |
| [in] | stack | 线程栈内存 |
| [in] | stack_size | 线程栈的大小 |
| [in] | stack_guard_size | 栈内存警戒线位置 |
| [in] | priority | 优先级 |
| [in] | detached | 是否为分离态 |
| [in] | privileged | 是否为特权线程 |
| xwos::SThd::~SThd | ( | ) |
静态线程析构函数
|
inline |
获取当前线程的栈信息
| [out] | stack | 用于返回线程栈信息的缓冲区 |

|
inline |
中断线程的阻塞态和睡眠态

|
inline |
通知线程退出

等待线程结束并获取它的返回值

通知线程退出,等待线程结束并获取它的返回值

|
inline |
终止线程并等待它退出

|
inline |
|
protectedvirtual |
线程主函数,用户需要重新实现此函数
|
inlineprotected |
|
inlineprotected |
|
inlineprotected |
判断当前线程是否可被冻结

|
inlineprotected |
判断当前线程是否可以退出

当前线程睡眠一段时间
| [in] | dur | 期望睡眠的时间 |

当前线程睡眠到一个时间点
| [in] | to | 期望唤醒的时间点 |

当前线程从一个时间起点睡眠到另一个时间点
| [in,out] | from | 指向缓冲区的指针,此缓冲区:
|
| [in] | dur | 期望被唤醒的时间增量(相对于时间原点) |

|
inlineprotected |
冻结当前线程

|
staticprivatedelete |
|
privatedelete |
|
private |