野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6830|回复: 7

[rt-thread] RT-Thread信号量删除

[复制链接]
发表于 2018-6-10 19:36:12 | 显示全部楼层 |阅读模式
RT-Thread中创建了一个动态的信号量,运行10次这个线程后删除这个动态信号量,但是问题是10次后他再次释放信号量跟获取信号量还是成功的,请问是什么问题。
QQ图片20180610193122.png
回复

使用道具 举报

发表于 2018-6-11 08:48:57 | 显示全部楼层
还没学习到,帮顶啊。。。。。
回复 支持 反对

使用道具 举报

发表于 2018-6-12 14:07:33 | 显示全部楼层
应该是删除了它就不会阻塞,所以依然可以使用。具体机制不清楚
回复 支持 反对

使用道具 举报

发表于 2018-6-12 14:13:42 | 显示全部楼层
用仿真器单步调试下,把你需要看的变量都添加到watch窗口,看下程序执行的时候是不是完全按照你想的那样,这样就很容易找到问题了,不然现在就是瞎蒙,猜不到结果的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-6-16 11:49:07 | 显示全部楼层
fire 发表于 2018-6-12 14:13
用仿真器单步调试下,把你需要看的变量都添加到watch窗口,看下程序执行的时候是不是完全按照你想的那样, ...

查了几天,还是没查出来问题在哪里,信号量、事件、互斥信号都是一样,删除了还是可以发送接收成功,就好像没有在内核对象列表中删除一样
回复 支持 反对

使用道具 举报

发表于 2018-8-23 13:34:36 | 显示全部楼层
东莞伟业 发表于 2018-6-16 11:49
查了几天,还是没查出来问题在哪里,信号量、事件、互斥信号都是一样,删除了还是可以发送接收成功,就好 ...

这个好像在最新个RTT内核里面已经更新了,不过keil自带的nano 3.03版本里面还没有更新,你可以看一下下面这个rtt官网论坛的链接:
https://www.rt-thread.org/qa/thread-7831-1-1.html
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-8-27 18:06:18 | 显示全部楼层
wasd0904 发表于 2018-8-23 13:34
这个好像在最新个RTT内核里面已经更新了,不过keil自带的nano 3.03版本里面还没有更新,你可以看一下下面 ...

那现在只能等keil那边更新了,我没弄过ENV来配置
回复 支持 反对

使用道具 举报

发表于 2018-11-1 13:44:02 | 显示全部楼层
可能那个内核太旧,在release,take里面没做检查。delete之后实际上如果那段内存的数据大部分还是保持的(因为free函数没有对数据清空)。实际编程时就应该考虑这个问题。不应该再调用,新代码也会assert,运行不了。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-5-1 09:54 , Processed in 0.032203 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表