RT-Thread 空闲线程以及两个常用的钩子函数

空闲线程: RT-Thread OS 中的一个特殊的系统线程,具备最低的优先级,形式上是一个无限循环结构,永远不被挂起

当系统中没有其他的就绪线程可以运行的时候,调度器将调度到空闲线程

空闲线程负责一些系统资源回收以及将一些处于关闭态的线程从线程调度列表中移除的动作

空闲线程向用户提供了钩子函数,空闲线程钩子函数可以让系统在空闲的时候执行一些非紧急事务,例如系统运行指示灯闪烁,CPU使用率统计等等。

空闲线程钩子函数:
设置钩子函数:rt_err_t rt_thread_idle_sethook(void (*hook)(void))

删除钩子函数:rt_err_t rt_thread_idle_dehook(void (*hook)(void))

空闲线程钩子函数使用注意:

(1)由于空闲线程是一个永远为就绪态的线程,所以钩子函数中执行的相关代码必须保证空闲线程在任何时刻都不会被挂起,例如rt_thread_delay() 、rt_sem_take()等可能会导致线程挂起的阻塞类函数都不能在钩子函数中使用。

(2)空闲线程可以设置多个钩子函数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值