26#define XF_OSAL_CHECK(x) if (x != XF_OK)\ 
   28    XF_LOGE(TAG, "xf check error: %d", x);\ 
   29    xf_osal_thread_delete(NULL);\ 
 
   37static void task1(
void *argument);
 
   38static void task2(
void *argument);
 
   39static void task3(
void *argument);
 
   54        .stack_size = 1024 * 2,
 
   59        .stack_size = 1024 * 2,
 
   64        .stack_size = 1024 * 2,
 
 
   87static void task1(
void *argument)
 
   97    XF_LOGI(
TAG, 
"thread stack space: %d", stack_space);
 
  103    XF_LOGI(
TAG, 
"thread priority: %d", priority);
 
  119            XF_LOGI(
TAG, 
"task1: An error occurred while resuming task2.");
 
 
  133    uint32_t tick_count = 0;
 
  140        XF_LOGI(
TAG, 
"task2 active count: %ld", count);
 
 
xf_err_t xf_osal_kernel_lock(void)
锁定 RTOS 内核调度程序。
 
xf_err_t xf_osal_kernel_unlock(void)
解锁 RTOS 内核调度程序。
 
uint32_t xf_osal_kernel_ms_to_ticks(uint32_t ms)
将 ms 数转为滴答数.
 
enum _xf_osal_state_t xf_osal_state_t
线程状态或内核状态。
 
uint32_t xf_osal_kernel_get_tick_count(void)
获取 RTOS 内核滴答计数。
 
uint32_t xf_osal_thread_get_stack_space(xf_osal_thread_t thread)
根据执行过程中的栈记录获取线程的可用堆栈空间。
 
xf_err_t xf_osal_thread_delete(xf_osal_thread_t thread)
终止线程的执行。
 
xf_osal_thread_t xf_osal_thread_get_current(void)
返回当前正在运行的线程的线程句柄。
 
const char * xf_osal_thread_get_name(xf_osal_thread_t thread)
获取线程的名称。
 
xf_osal_thread_t xf_osal_thread_create(xf_osal_thread_func_t func, void *argument, const xf_osal_thread_attr_t *attr)
创建一个线程并将其添加到活动线程中。
 
xf_err_t xf_osal_delay_until(uint32_t ticks)
(睡眠)等到指定时间刻度。
 
xf_err_t xf_osal_thread_suspend(xf_osal_thread_t thread)
暂停指定线程的执行,使其进入 BLOCKED 状态。
 
enum _xf_osal_priority_t xf_osal_priority_t
线程优先级。
 
uint32_t xf_osal_thread_get_count(void)
获取活动线程的数量。
 
xf_err_t xf_osal_thread_yield(void)
将控制权传递给处于状态 READY 的下一个线程。
 
void * xf_osal_thread_t
线程句柄。
 
xf_err_t xf_osal_delay_ms(uint32_t ms)
(睡眠)等待超时,以 ms 为单位。
 
xf_osal_state_t xf_osal_thread_get_state(xf_osal_thread_t thread)
获取线程的当前线程状态。
 
xf_err_t xf_osal_thread_resume(xf_osal_thread_t thread)
恢复线程的执行。
 
xf_osal_priority_t xf_osal_thread_get_priority(xf_osal_thread_t thread)
获取线程的当前优先级。
 
xf_err_t xf_osal_thread_set_priority(xf_osal_thread_t thread, xf_osal_priority_t priority)
更改线程的优先级。
 
@ XF_OSAL_PRIORITY_NORMOL
 
@ XF_OSAL_PRIORITY_BELOW_NORMAL
 
@ XF_OSAL_PRIORITY_ABOVE_NORMAL
 
int32_t xf_err_t
整形错误类型。 错误码具体值见 xf_err_code_t.
 
static void task2(void *argument)
 
static xf_osal_thread_t thread1
 
static xf_osal_thread_t thread[2]
 
static void task3(void *argument)
 
static void task(xf_task_t task)
 
#define XF_LOGI(tag, format,...)
 
#define XF_LOGE(tag, format,...)