Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
idle空闲线程
idle线程资源回收
发布于 2021-08-28 15:09:51 浏览:1136
订阅该版
线程退出的时候,需要idle线程执行rt_thread_idle_excute才能回收退出线程的资源,但是工作线程比idle线程级别高的话,idle线程得不到执行,跟idle线程同优先级的话,idle线程会跟工作线程来回切换,占用执行太多cpu资源,是不是有点尴尬
查看更多
6
个回答
默认排序
按发布时间排序
出出啊
2021-08-28
恃人不如自恃,人之为己者不如己之自为也
严格讲,一个系统不应该出现某个高优先级线程独占cpu的情况出现,如果出现了,首先想到的是优化。 后面你好像提到了另外一个问题, 同优先级的问题。可能不适合工作线程和 idle 线程设置同优先级。
yangjie
认证专家
2021-08-28
hello
任务一般不和idle同优先级,不过你没给idle线程留有运行的机会吗
红枫
认证专家
2021-08-28
这家伙很懒,什么也没写!
高优先级线程不能长时间占死cpu,否则你的线程设计就是有问题的。 一般一件事务处理使用一个线程,事务工作来了线程激活,完成此次处理后释放cpu,继续等待下次事务到了。 比如一个键盘扫描事务,可以设计成每10ms扫描一遍各按键按下状态,有键按下就向按键队列发按键码,一次扫描完成后等待10ms,然后再次扫描。
游走在01的海洋
2021-08-28
In the end, it's not the years in your life that count. It's the life in your years.
一、最好不要设置与空闲idle线程优先级相同的工作线程; 二、在一个RTOS系统当中,RTT提供了优先级抢占+时间片轮询的调度机制;基于这个调度机制,我们要合理的分配线程的优先级、时间片、延时时间(让出CPU); 三、线程让出CPU是系统能够协调工作的一个重要标准(特殊:你就是想卡在这个任务); 四、至于你说的来回切换占用CPU资源。本身RTOS的核心处理,就是线程的上下文切换,实现高实时性;并且线程切换到时间也是再ms级别;所以,从宏观上看,任务的实时性是没有影响的。 RTOS重要的是实时性,而不是占用CPU资源。
mysterywolf
认证专家
2021-08-29
https://github.com/mysterywolf
在RTOS下编程,无论是哪种RTOS,其都是有一定编程规则的,不是想怎么用就怎么用: 1. 请确保idle独占一个优先级,不能由其他线程和idle线程共享优先级 2. 高优先级的线程**有义务**让出cpu时间让低优先级,根据RM调度原则,一旦CPU高于69.3%,**有可能**系统将无法保证实时性。 因此在RTOS下编程,无论是RT-Thread还是其他的RTOS,都不是盲目的,自己想怎么搞就怎么搞的,有严格的规则和约束。
Eureka1024
2021-08-30
嵌入式软件开发工程师一枚
你既然建立一个线程,你就得给他有机会去执行他的任务的机会,空闲线程也是需要你给机会去执行的。 所以高优先级的线程一定会有让出机制,要么等待条件,要么延时。 如果空闲线程没机会使用到cpu,那说明你的系统设计的有问题。
撰写答案
登录
注册新账号
关注者
0
被浏览
1.1k
关于作者
cris8259
这家伙很懒,什么也没写!
提问
25
回答
21
被采纳
0
关注TA
发私信
相关问题
1
空闲线程调用LED闪烁钩子函数
2
程序跑飞了,msh发命令进不了shell 大循环,一直在idle里
3
RT-Thread Nano 支持CPU使用率计算吗?
4
SCB_CFSR_UFSR:0x02_INVSTATE
5
IDLE 线程总是显示超时状态,是什么原因?
6
MSH运行hwtimer_test后把idle线程kill了?
7
idle线程中的rt_free
8
为什么RTT中空闲线程永远不能被挂起?
9
NANO3.15 无法进入空闲线程钩子函数【已解决】
10
rt-4.1.0Bete版线程中使用mdelay后,线程结束时无法被回收?
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
使用百度AI助手辅助编写一个rt-thread下的ONVIF设备发现功能的功能代码
2
RT-Thread 发布 EtherKit开源以太网硬件!
3
rt-thread使用cherryusb实现虚拟串口
4
《C++20 图形界面程序:速度与渲染效率的双重优化秘籍》
5
《原子操作:程序世界里的“最小魔法单位”解析》
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
I2C_IIC
WIZnet_W5500
ota在线升级
UART
PWM
cubemx
freemodbus
flash
packages_软件包
BSP
潘多拉开发板_Pandora
定时器
ADC
GD32
flashDB
socket
中断
Debug
编译报错
msh
SFUD
keil_MDK
rt_mq_消息队列_msg_queue
at_device
ulog
C++_cpp
本月问答贡献
踩姑娘的小蘑菇
7
个答案
3
次被采纳
张世争
9
个答案
2
次被采纳
rv666
5
个答案
2
次被采纳
a1012112796
13
个答案
1
次被采纳
用户名由3_15位
11
个答案
1
次被采纳
本月文章贡献
程序员阿伟
6
篇文章
2
次点赞
hhart
3
篇文章
4
次点赞
大龄码农
1
篇文章
2
次点赞
ThinkCode
1
篇文章
1
次点赞
Betrayer
1
篇文章
1
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部