消息队列及其操作_读书笔记_8
2016-10-10 00:03
190 查看
4.5消息队列及其操作
4.5.1消息队列
(1)使用消息队列可在任务之间传递多条消息。
(2)消息队列由三部分组成:事件控制块、消息队列和消息。
1.消息指针数组
(1)消息队列的核心是消息数组指针。
(2) 消息队列主要参数:
2.队列控制块
(1)为了对消息指针数组进行有效的管理,ucos-II把消息指针数组的基本参数都记录在一个叫做队列控制块的结构中。
4.5.2消息队列的操作
1.创建消息队列
(1)调用函数:OSQCreate()
原型:OS_EVENT OSCreate(
void *start, //指针数组地址
INT16U size //数组长度
)
2.请求消息队列
(1)OSQPend(
OS_EVENT *pevent, //所请求消息队列的指针
INT16U timeout, //等待时限
INT8U * err //错误信息
)
(2)函数返回值为消息指针。
(3)pevent: 要访问的消息队列事件控制块的指针。
3.向消息队列发送消息
(1)函数原型:
INT8U OSQPost(
OS_EVENT * pevent, //消息队列的指针
void *msg //消息指针
);
4.清空消息队列
INT8U OSQFlush(
OS_EVENT * pevent //消息队列指针
)
5.删除消息队列
OS_EVENT * OSQDel(
OS_EVENT * pevent //消息队列指针
)
6.查询消息队列
INT8U OSQQuery(
OS_EVENT * pevent, //消息队列指针
OS_Q_DATA * pdata //存放状态信息的结构
);
4.5.1消息队列
(1)使用消息队列可在任务之间传递多条消息。
(2)消息队列由三部分组成:事件控制块、消息队列和消息。
1.消息指针数组
(1)消息队列的核心是消息数组指针。
(2) 消息队列主要参数:
2.队列控制块
(1)为了对消息指针数组进行有效的管理,ucos-II把消息指针数组的基本参数都记录在一个叫做队列控制块的结构中。
4.5.2消息队列的操作
1.创建消息队列
(1)调用函数:OSQCreate()
原型:OS_EVENT OSCreate(
void *start, //指针数组地址
INT16U size //数组长度
)
2.请求消息队列
(1)OSQPend(
OS_EVENT *pevent, //所请求消息队列的指针
INT16U timeout, //等待时限
INT8U * err //错误信息
)
(2)函数返回值为消息指针。
(3)pevent: 要访问的消息队列事件控制块的指针。
3.向消息队列发送消息
(1)函数原型:
INT8U OSQPost(
OS_EVENT * pevent, //消息队列的指针
void *msg //消息指针
);
4.清空消息队列
INT8U OSQFlush(
OS_EVENT * pevent //消息队列指针
)
5.删除消息队列
OS_EVENT * OSQDel(
OS_EVENT * pevent //消息队列指针
)
6.查询消息队列
INT8U OSQQuery(
OS_EVENT * pevent, //消息队列指针
OS_Q_DATA * pdata //存放状态信息的结构
);
相关文章推荐
- 消息邮箱及其操作_读书笔记_7
- 消息队列函数(msgget、msgctl、msgsnd、msgrcv)及其范例
- 消息队列函数(msgget、msgctl、msgsnd、msgrcv)及其范例 .
- [置顶] Redis应用3-基于Redis消息队列实现的异步操作
- 消息队列函数(msgget、msgctl、msgsnd、msgrcv)及其范例
- 实验4:栈和队列的基本操作实现及其应用——链队列
- 使用C#来操作消息队列
- uC/OS-II消息邮箱及其操作
- Android消息机制——消息队列工作原理(Android艺术开发探索读书笔记)
- Linux消息队列操作
- Python操作RabbitMQ服务器实现消息队列的路由功能
- linux消息队列操作
- 如何使用Jedis操作Redis消息队列
- 消息队列总结及其实现代码
- Posix消息队列的基本操作——创建或打开
- 循环队列的顺序存储结构及其操作
- php中对共享内存,消息队列的操作
- 消息队列(Message Queue)简介及其使用
- 消息队列、OSS常用操作封装
- Linux消息队列操作