嵌入式技术论坛
登录
直播中
贾埃罗
7年用户
1709经验值
私信
关注
[问答]
为什么使用事件通知线程同步会导致线程死掉呢?
开启该帖子的消息推送
PIN管
定时器
RT-Thread
使用事件通知线程同步,导致线程死掉,而且使用ps命令,系统直接出错死掉
代码如下
sta
ti
c void fin_timer_handler(void *args)//这个是中断的下半部,使用的软件定时器
{
rt_event_send(&event, EVENT_PRESS_FR);//<唤醒读取指纹线程,读取
rt_pin_irq_enable(FIN_PIN, PIN_IRQ_ENABLE);
LOG_D("111111");
}
void test_entry(void *parameter)
{
int ret = 0;
while(1)
{
LOG_D("Xinme");
rt_event_recv(&event, EVENT_PRESS_FR,RT_EVENT_FLAG_CLEAR | RT_EVENT_FLAG_AND, RT_WAITING_FOREVER, NULL);
LOG_D("2222222");
ret = press_FR();
if(!ret){
class_find_person(class, seach.pageID, 1);
LOG_D("33333333");
msgbox_create(CHECK_IN_MESSAGE);
LOG_D("4444444444");
rt_event_send(&lvgl_event, EVENT_PRESS_REFRSH);//这里会执行,但是下面的这个打印 //信息不会执行
LOG_D("5555555555");
}
}
}
回帖
(3)
贾永世
2023-3-14 10:32:53
要不尝试换个思路,也许用了lvgl的线程的栈溢出了。
要不尝试换个思路,也许用了lvgl的线程的栈溢出了。
举报
贾埃罗
2023-3-14 10:32:59
大佬,好像是的,我这个线程的栈才给了512字节,一般栈溢出怎么判断哦
大佬,好像是的,我这个线程的栈才给了512字节,一般栈溢出怎么判断哦
举报
贾永世
2023-3-14 10:33:08
开启rtconfig里面的栈溢出检测.
ps命令查看最大占用率,大于70%,加大栈空间.
有的时候会出现一些函数需要的栈空间特别大,但是需要特定条件触发.这种只能自己判断了
开启rtconfig里面的栈溢出检测.
ps命令查看最大占用率,大于70%,加大栈空间.
有的时候会出现一些函数需要的栈空间特别大,但是需要特定条件触发.这种只能自己判断了
举报
更多回帖
rotate(-90deg);
回复
相关问答
PIN管
定时器
RT-Thread
CAN和serial
线程
调用rt_device_write函数出现卡死是为什么?
2022-05-06
2971
为什么会有
线程
?怎样去操作
线程
呢
2021-12-23
1225
线程
同步
管理是什么意思
2021-09-30
921
多
线程
互斥,
同步
的尴尬问题
2013-05-17
4068
什么是
线程
安全?如何去实现
线程
安全?
2021-07-23
1805
F207+FreeRTOS 多
线程
跑一段时间
线程
会
死掉
是什么原因?
2020-07-27
4118
多
线程
下ASSERT函数为什么
会
导致
线程
挂起
呢
2022-09-27
1333
为什么在
线程
中用rt_delay挂起
线程
的时候
会
死
呢
?
2022-11-02
1505
线程
的
同步
方式有哪几种?
2021-05-26
1013
不同的设备使用rt_device_write函数会有问题出现咋办
2022-11-09
898
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
首页
论坛版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分