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

Public 成员函数 | |
| DThd (const char *name, 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) | |
| 动态线程构造函数 | |
| ~DThd () | |
| 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 | acquire () |
| xwer_t | release () |
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 成员函数 | |
| static xwer_t | sThdMainFunction (DThd *thd) |
Private 属性 | |
| xwos_thd_d | mThdDesc |
| xwer_t | mCtorRc |
| xwos::DThd::DThd | ( | const char * | name, |
| 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_size | 线程栈的大小 |
| [in] | stack_guard_size | 栈内存警戒线位置 |
| [in] | priority | 优先级 |
| [in] | detached | 是否为分离态 |
| [in] | privileged | 是否为特权线程 |
| xwos::DThd::~DThd | ( | ) |
动态线程析构函数
|
inline |
获取当前线程的栈信息
| [out] | stack | 用于返回线程栈信息的缓冲区 |

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

|
inline |
通知线程退出

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

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

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

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

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

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

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

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

|
inlineprotected |
冻结当前线程

|
private |