005_消息队列

Posted luxiaoguogege

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了005_消息队列相关的知识,希望对你有一定的参考价值。

(一)定义消息队列

////////////////////////消息队列//////////////////////////////
#define DATAMSG_Q_NUM    4    //发送数据的消息队列的数量
OS_Q DATA_Msg;                //定义一个消息队列,用于发送数据

(二)创建消息队列

//创建消息队列DATA_Msg
    OSQCreate ((OS_Q*        )&DATA_Msg,            //消息队列
                (CPU_CHAR*    )"DATA Msg",        //消息队列名称
                (OS_MSG_QTY    )DATAMSG_Q_NUM,        //消息队列长度
                (OS_ERR*    )&err);                //错误码

(三)发送消息队列

        //发送消息
        OSQPost((OS_Q*        )&DATA_Msg,            //哪个消息队列
                (void*        )pbuf,                //发送的数组
                (OS_MSG_SIZE)10,                //长度
                (OS_OPT        )OS_OPT_POST_FIFO,  //选项:先进先出

(四)接收消息队列

        //请求消息
        p=OSQPend((OS_Q*        )&DATA_Msg,   
                  (OS_TICK        )0,
                  (OS_OPT        )OS_OPT_PEND_BLOCKING,
                  (OS_MSG_SIZE*    )&size,    
                  (CPU_TS*        )0,
                  (OS_ERR*        )&err);

 

以上是关于005_消息队列的主要内容,如果未能解决你的问题,请参考以下文章

emWin 2天速成实例教程005_控件聚焦和用户消息的使用方法

RabbitMQ使用场景_005_主题模式

IPC System V 消息队列 - 发送一个数组块

队列练习之Example005-Q 是一个队列,S 是一个空栈,实现将队列中的元素逆置的算法

rabbitmq - 不会获取队列中的所有消息

005 两个栈组成队列