dsp MessageQ消息队列
来源:互联网 发布:python if else 简写 编辑:程序博客网 时间:2024/06/01 17:49
dsp 重要的通信机制MessageQ:
这个通信机制使用的很广泛,比Notif的优点就是其可以传递大于32bit的数据, 而notify机制只能传递小于32bit的数据。
我们需要对Heapbuf进行初始化并申请Heapbuf内存。
HeapBufMP_Params_init(& heapBufParams);heapBufParams.regionId = headId;
heapBufParams.name = "zuoxiaonian";
heapBufParams.numBlocks = 1;
heapBufParams.blockSize = sizeof(struct mymsg);
heapHandle = HeapBufMP_create(&heapBufParams);
if (heapHandle == NULL)
{
System_printf("HeapBufMp_create failed\n");
}
对消息申请消息ID:
status = MessageQ_registerHeap((IHeap_Handle)heapHandle, headId);
if (status < 0 )
{
System_printf("MessageQ_registerHeap failed\n");
}
对消息申请内存。
zuoxiaonian_msg = (struct mymsg *)MessageQ_alloc(headId, sizeof(struct mymsg));
之后就是对MessageQ的打开,关闭, 消息的发送和接受。
MessageQ_create(),MessageQ_delete(); 对消息的创建和删除。
MessageQ_open(); MessageQ_close(); 对消息通道的打开和关闭。
MessageQ_put();MessageQ_get();消息的接受和发送。
注意:
1.一个消息队列可以有多个写者,但是只能有一个读者。(一般有几个核就创建几个消息通道, 一个核对应一个消息通道)
2.消息队列由谁创建就有谁删除,对打开就有谁关闭, (通常为写端打开,写端关闭,读端创建,读端删除)
3.可以对发送消息的结构体进行自由封装
0 0
- dsp MessageQ消息队列
- (多核DSP快速入门)8、利用MessageQ模块的多核灰度转换程序
- (多核DSP快速入门)8、利用MessageQ模块的多核灰度转换程序
- 消息队列
- 消息队列
- 消息队列
- 消息队列
- 消息队列
- 消息队列
- 消息队列
- 消息队列
- 消息队列
- 消息队列
- 消息队列
- 消息队列
- 消息队列
- 消息队列
- 消息队列
- Python3教程之《开发常用工具》
- QT界面与视频同时显示在屏幕上
- 使用Eclipse开发和调试java程序
- Continuous integration for Xcode Project
- Tomcat 热部署
- dsp MessageQ消息队列
- Android的消息机制—Handler机制
- Android之---Context(上下文)
- java从小白到架构师大牛必看书籍
- A*算法
- mysql缓存
- (0015)iOS 开发之Mac上安装MySQL服务与创建数据库的基本步骤
- Android js交互 与 Html启动App
- 数据结构_树_相关定义和解释