【问题标题】:System V Messaging QueuesSystem V 消息队列
【发布时间】:2013-03-29 16:35:08
【问题描述】:

我正在编写一个应用程序,它有一个消息队列和两个进程正在监听它。我怎样才能防止一个人先阅读它?

场景是: 有一个服务器应用程序读取队列并将消息发送到其他队列。 (一个服务器和多个具有不同消息队列的客户端)

但是客户端和服务器之间的消息因此来自同一个队列;我不能保证服务器在客户端线程(读取传入)之前接收消息。

你能帮我实现吗?

【问题讨论】:

    标签: multithreading message-queue


    【解决方案1】:

    我想我找到了解决方案。我的错误是没有正确阅读手册。

    ssize_t msgrcv(int msqid, struct msgbuf *msgp, size_t msgsz, long msgtyp, int msgflg);
    

    参数 4 用于此目的。如果我为客户端设置消息标志就足够了!

    【讨论】:

      猜你喜欢
      • 2010-12-15
      • 2020-04-18
      • 1970-01-01
      • 2011-05-05
      • 2017-05-21
      • 2016-03-04
      • 2011-09-18
      • 1970-01-01
      • 2010-09-28
      相关资源
      最近更新 更多