郞性人生

导航

RTOS中任务线程与进程间通信消息的创建顺序

问题:

在RT-Thread创建线程的时候用到了信号量,信号量创建函数到了任务线程创建函数的后面,在程序下到MCU后不能运行;

原因:

在任务线程创建的时间会去执行任务函数;而此时会在任务函数中访问信号量,但时信号量还没有创建,信号量句柄是NULL,所以在assert时会失败,导致程序无法运行;

解决:

在任务线程创建之间,在任务函数中用到的所有资源都创建好(信号量,消息队列等),然后再去创建任务线程;

posted on 2019-07-08 00:02  郞性人生  阅读(348)  评论(0)    收藏  举报