Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
线程
资源
rm-unlink-删除文件目录
线程处于close状态消耗资源吗
发布于 2020-08-05 14:42:51 浏览:1663
订阅该版
线程使用完毕以后,ruturn、rt_thread_delete(thread_t); 在FinSH上输入list_thread,发现线程处于close状态,![1596609733.png](/uploads/20200805/871f8341573d99202feb9e51a9332dba.png) 还占据着栈与时间片。 这是为什么?难道资源不释放吗? 找见原因了,因为我线程是死循环,执行不到空线程
查看更多
ching
2020-08-05
这家伙很懒,什么也没写!
对于一些使用 rt_thread_create() 创建出来的线程,当不需要使用,或者运行出错时,我们可以使用下面的函数接口来从系统中把线程完全删除掉: rt_err_t rt_thread_delete(rt_thread_t thread); 调用该函数后,线程对象将会被移出线程队列并且从内核对象管理器中删除,线程占用的堆栈空间也会被释放,收回的空间将重新用于其他的内存分配。实际上,用 rt_thread_delete() 函数删除线程接口,仅仅是把相应的线程状态更改为 RT_THREAD_CLOSE 状态,然后放入到 rt_thread_defunct 队列中;而真正的删除动作(释放线程控制块和释放线程栈)需要到下一次执行空闲线程时,由空闲线程完成最后的线程删除动作。线程删除 rt_thread_delete() 接口的参数和返回值见下表: 参数 描述 thread 要删除的线程句柄 返回 —— RT_EOK 删除线程成功 -RT_ERROR 删除线程失败 这个函数仅在使能了系统动态堆时才有效(即 RT_USING_HEAP 宏定义已经定义了)。
3
个回答
默认排序
按发布时间排序
红枫
认证专家
2020-08-05
这家伙很懒,什么也没写!
看看你工程配置中定义RT_USING_HEAP了吗?
_Dong
2020-08-05
这家伙很懒,什么也没写!
找见原因了,因为我线程是死循环,执行不到空线程 重新读了一遍编程指南 空闲线程是系统创建的最低优先级的线程,线程状态永远为就绪态。当系统中无其他就绪线程存在时, 调度器将调度到空闲线程,它通常是一个死循环,且永远不能被挂起。另外,空闲线程在 RT-Thread 也有 着它的特殊用途: 若某线程运行完毕,系统将自动删除线程:自动执行 rt_thread_exit() 函数,先将该线程从系统就绪 队列中删除,再将该线程的状态更改为关闭状态,不再参与系统调度,然后挂入 rt_thread_defunct 僵尸 队列(资源未回收、处于关闭状态的线程队列)中,最后空闲线程会回收被删除线程的资源。 空闲线程也提供了接口来运行用户设置的钩子函数,在空闲线程运行时会调用该钩子函数,适合钩入 功耗管理、看门狗喂狗等工作。
撰写答案
登录
注册新账号
关注者
0
被浏览
1.7k
关于作者
_Dong
这家伙很懒,什么也没写!
提问
7
回答
11
被采纳
0
关注TA
发私信
相关问题
1
请问执行rt_thread_delete的操作后,线程还在运行是什么情况?
2
rtthread中,线程中的ADC采样率需求比时钟嘀嗒需求高怎么办?
3
有没有检测系统中有没有某个名字的线程的接口函数?
4
使用finsh 进行ota成功,线程里开ota失败
5
调度锁会引起线程内存不足
6
paho_mqtt线程相关疑问
7
thread中不能使用rt_timer_start() 来开启定时器
8
线程递归是什么形成的?
9
程序运行一会儿报错,拜托拜托
10
我在线程里写了can 的发送函数,这个线程就出了问题
推荐文章
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
【1024】瑞萨 RA 系列 BSP 制作与适配最新版本的 Keil 、 RSC、固件,较新的 FSP
2
基于 RT-Thread 星火一号开发板的俄罗斯方块
3
RTThread studio 中添加 Micro_ROS 软件包有 Bug
4
【1024 RT-Thread与英飞凌(infineon)合作得板子PSOC 6 板子学习】
5
【1024】用HMI-Board 復刻 X-Track
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
ART-Pi
FinSH
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
rt-smart
FAL
ESP8266
I2C_IIC
WIZnet_W5500
ota在线升级
UART
cubemx
PWM
flash
packages_软件包
freemodbus
BSP
潘多拉开发板_Pandora
定时器
ADC
GD32
flashDB
socket
中断
Debug
编译报错
msh
keil_MDK
SFUD
rt_mq_消息队列_msg_queue
C++_cpp
at_device
ulog
本月问答贡献
出出啊
1516
个答案
342
次被采纳
小小李sunny
1440
个答案
289
次被采纳
张世争
793
个答案
171
次被采纳
crystal266
547
个答案
161
次被采纳
whj467467222
1222
个答案
148
次被采纳
本月文章贡献
出出啊
1
篇文章
1
次点赞
小小李sunny
1
篇文章
1
次点赞
张世争
1
篇文章
4
次点赞
crystal266
2
篇文章
2
次点赞
whj467467222
2
篇文章
1
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部