zoukankan      html  css  js  c++  java
  • messageQ 消息队列

    之后就是对MessageQ的打开,关闭, 消息的发送和接受。

    MessageQ_create(),MessageQ_delete(); 对消息的创建和删除。

    MessageQ_open(); MessageQ_close(); 对消息通道的打开和关闭。

    MessageQ_put();MessageQ_get();消息的接受和发送。

    注意:

    1.一个消息队列可以有多个写者,但是只能有一个读者。(一般有几个核就创建几个消息通道, 一个核对应一个消息通道)

    2.消息队列由谁创建就有谁删除,对打开就有谁关闭, (通常为写端打开,写端关闭,读端创建,读端删除)

    3.可以对发送消息的结构体进行自由封装

    MessageQ模块:主核(核0)在将图像文件输入共享内存后,需要将输入图像缓存和输出图像缓存的地址打包成消息,传递给从核。总之,MessageQ是用来传递少量信息的,一般是地址,标志位之类的参数,不是传递大规模数组用的。对于大规模的数组,可以利用messageQ传递其首地址。

    MessageQ模块的主要特点:
    1. 实现了处理期间变长消息的传递,所需要传递的消息一般超过32bit;
    2. 其消息的传递都是通过操作消息队列来实现的;
    3. 每个消息队列可以有多个写者,但只能有一个读者,而每个任务(task)可以对多个消息队列进行读写;
    4. 一个宿主在准备接收消息时,必须先创建消息队列,而在发送消息前,需要打开预定的接收消息队列;

    很关键的一点就是 谁接收,谁创建( messageQ_create() )
    谁发送,谁打开( messageQ_open() )

  • 相关阅读:
    Linux_搭建NFS服务(基础)
    Linux_配置主DNS服务(基础)
    Linux_配置辅助DNS服务(基础)
    Linux_配置本地YUM源(RHEL8)
    9. Mybatis plugins标签 实现分页
    27. SpringBoot 切换内嵌Servlet容器
    8. Mybatis typeHandlers标签
    63. VUEX Getters基本使用
    62. State单一状态树概念
    61 . VUEX state 和 mutations
  • 原文地址:https://www.cnblogs.com/pjl1119/p/10028432.html
Copyright © 2011-2022 走看看