查看更多
rt_err_t rt_mq_init(rt_mq_t mq, const char* name, void *msgpool, rt_size_t msg_size, rt_size_t pool_size, ``` 这里的的name就是这个队列的名字,这个名字是唯一的,这样程序就不会认错队列了。msgpool存放数据的缓冲区。这样就能保证B线程准确的收到的数据。 问题二:如果有更高优先级的线程占据了CPU的主导权,那么B线程是接受不到消息的,这里你要明白一个概念,队列是线程间的异步通讯。 补充回答:1,对于 问题一 如果你想更深入的了解,可以去看下源码。 2,对于 问题二 建议先去看下[https://www.rt-thread.org/document/site/submodules/rtthread-manual-doc/zh/0preface/00-chapter1-preface/](《RT编程指南》)
回到 顶部
发布 问题
分享 好友
手机 浏览
投诉 建议
回到 底部