问题标签 [mqueue]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
90104 浏览

c - 如何在基于 Linux 的系统上的 ac 程序中使用 mqueue?

如何在基于 Linux 的系统上的 ac 程序中使用 mqueue(消息队列)?

我正在寻找一些好的代码示例,这些示例可以展示如何以正确和适当的方式完成此操作,也许是一个操作指南。

0 投票
2 回答
587 浏览

unix - UNIX 消息队列是否维护消息的顺序?

如果在 UNIX/Linux/BSD/OSX 下,我在应用程序 A 中使用以下 API 序列:

以及应用程序 B 中的这一系列事件:

...我能保证消息队列保持消息的顺序吗?也就是那个Application B会先从ptrData1接收数据,再从ptrData2接收数据?

0 投票
5 回答
851 浏览

winapi - Pthread win32 库,不支持 PTHREAD_PROCESS_SHARED

我正在使用 pthread win32 库来实现 mqueue。但是当它遇到以下代码时,它会抛出#40错误应该是ENOSYS,意味着系统不支持。

出错后我 40 岁。任何机构对此有想法?还是您有其他替代解决方案,例如使用哪种WIN32线程函数来代替它。

注意:如果有人在win32中成功实现了mqueue?谢谢

0 投票
1 回答
2588 浏览

c++ - C++ mq_receive EMSGSIZE 问题

我正在尝试使用 mqueue 发送消息“测试”,但消息接收失败并出现 EMSGSIZE。代码:

收到它会打印 -1 和 EMSGSIZE errno。怎么了?

编辑:我正在使用 Fedora 15

0 投票
1 回答
632 浏览

postgresql - 将 snmptrapd 重定向到 postgres 或消息队列

我需要收集 snmptraps 并将它们显示在 Web 界面中。该应用程序已经包含 *ruby on rails *linux *delayed_job(用于排队) *postgresql *一些执行 snmp 查询的 cron 作业

现在我需要运行类似 snmptrapd 的东西来收集警报。snmptrapd 是否有可能将其陷阱写入我可以使用 cron 作业处理的队列。像 linux 的内置 mqueue 这样的东西会很棒。甚至将其写入 postgresql 数据库(我知道它支持 mysql,但在任何地方都没有提到 postgres)

有谁知道我如何将 snmptrapd 的输出重定向到我可以使用 cron 作业处理的内容。

0 投票
1 回答
2688 浏览

c++ - linux mq_open 忽略 mq_msgsize 属性

所有人,曾经认为我是理智的,现在不太确定。
我正在尝试创建一个消息队列,其 mq_msgsize 属性不是 8192,这似乎是默认值。我在下面附上了我的代码——它有许多 printf 显示值。如果您能指出我做错了什么,我将永远感激不尽。

输出如下所示: 队列大小现在是:8192 队列大小现在是:8192 队列大小现在是:8192

谢谢!

0 投票
1 回答
589 浏览

sigkill - QNX 系统在使用 phshutdown 关闭时挂起

使用 phshutdown(重新启动或关闭)关闭 QNX neutrino 时,系统在杀死消息队列(mqueue)时挂起。屏幕上显示的消息是

关闭服务提供者(mqueue)

这可能是什么原因?

0 投票
1 回答
818 浏览

c - 通过消息队列发送 void* 对象[linux]

所以,我实现了我自己的 mpi 库(一个简化版本),我需要在进程之间发送/接收一些数据。MPI_Send 看起来像这样(void *buf,int count,datatype data,etc...)。所以这意味着我需要发送指向 buf 地址的数据类型(char、double 或 int)的计数元素。我需要通过消息队列(mq)发送 em。MPI_Recv 采用相同的参数。目前这是我在发送和接收中所做的:

现在我只收到数组的第一个元素。我将如何发送整个事情?这是我的想法

如果有什么不够清楚,我会回复

0 投票
1 回答
553 浏览

c++ - 无法创建超过 5 个 Mqueue

我在创建 mqueue 时遇到问题,即我的系统似乎阻止我创建超过 5 个 mqueue,即使 /proc/sys/fs/mqueue/queues_max 设置为 256。我正在运行 Ubuntu 13.04 服务器上带有 Atom E680T 的 Q7 模块系统,我还在运行自定义编译内核 (3.8.0) 以减小内核大小并添加默认情况下缺少的看门狗和 i2c 访问。

我已经检查以确保通过安装 mqueue 接口只使用了 5 个 mqueue,在创建 5 个之后它不会让我创建第 6 个,返回“打开的文件太多”。错误。为了确保函数调用没有问题,我删除了一个现有队列并再次运行我的程序,它成功地创建了队列。

我目前不知所措,我能找到的信息表明 /proc/sys/fs/mqueue/queues_max 应该控制限制,并且默认为 256。但是修改该文件夹中的这个或任何其他文件并没有出现帮助。

因此,如果有人能指出我的正确方向,我将不胜感激,在大多数情况下,mqueue 是通过以下变体创建的:

0 投票
2 回答
2811 浏览

c - mqueue:消息太长

当我运行以下程序时,我总是收到错误消息“消息太长”。为什么?

这是来源:

这是输出:

/ **新编辑** /

好的,我更改了代码以更好地消除一些歧义

输出