//线程创建
rt_thread_t rt_thread_create(const char *name,
void (*entry)(void *parameter),
void *parameter,
rt_uint32_t stack_size,
rt_uint8_t priority,
rt_uint32_t tick)
//启动线程
rt_err_t rt_thread_startup(rt_thread_t thread)
//删除线程
rt_err_t rt_thread_delete(rt_thread_t thread)
//获取当前线程
rt_thread_t rt_thread_self(void);
//系统延时
rt_err_t rt_thread_mdelay(rt_int32_t ms)
rt_err_t rt_thread_sleep(rt_tick_t tick)
rt_err_t rt_thread_delay(rt_tick_t tick)
//线程控制
rt_err_t rt_thread_control(rt_thread_t thread, int cmd, void *arg)
cmd参数:
RT_THREAD_CTRL_STARTUP
RT_THREAD_CTRL_CLOSE
RT_THREAD_CTRL_CHANGE_PRIORITY
#define RT_THREAD_CTRL_INFO
//线程让出
rt_err_t rt_thread_yield(void)
//线程挂起
rt_err_t rt_thread_suspend (rt_thread_t thread)
配合rt_schedule()可以用于挂起自己
//执行调度
void rt_schedule(void)
//线程恢复
rt_err_t rt_thread_resume (rt_thread_t thread)
//设置空闲线程钩子
void rt_thread_idle_sethook(void (*hook)(void))
rt_thread_delay(), rt_sem_take() 等可能会导致线程挂起,空闲线程以及空闲钩子函数里不能有这种操作
RT-Thread操作系统常用线程函数
最新推荐文章于 2024-04-25 10:00:00 发布