Vxworks入门笔记--消息队列
一.概念:
1.消息队列用于Task之间传递信息。
2.多个任务向同一个消息队列发送消息或接收消息。
3.ISR可以用NO_WAIT方式发送消息。
二.控制函数:
1. msgQCreate
2. msgQSend
3.msgQReceive
4. msgQDelete
一旦msgQDelete()操作执行完毕,阻塞在该消息队列上的Task,包括阻塞在发送队列、接收队列上的Task,都将被唤醒(Unpend),而消息队列的ID从此不再有效。
三.建议:
1.为每一个Task创建专用MsgQ。
2.所有需发给该Task的Message都送到唯一MsgQ。
3.因为消息队列有Copy & MaxLength的特性,所以消息队列中我们可以只存放指针。