繁体   English   中英

Unix-如何将消息发送到多个进程?

[英]Unix - How can I send a message to multiple processes?

我有一个进程A,它需要向正在运行的所有类型B的进程发送一条消息。 进程A不了解其他进程,可以根据外部因素来创建和销毁它们,因此我可以运行数量不等的B型进程。

我以为可以在进程A中使用UDP套接字将消息发送到端口P,并让我所有类型为B的进程都侦听此端口P并接收消息的副本。

那可能吗?

我正在使用Linux OpenWRT。

我正在尝试使用LuaSockets,但出现“地址已在使用中”错误。 看来我不能有多个应用程序来监听同一端口?

谢谢你的帮助

如果所有进程都在一台计算机上本地运行,则使用共享内存可能会很有用。

请查看http://man7.org/linux/man-pages/man7/shm_overview.7.html以获得解释。

简而言之,您将需要主进程来创建共享内存区域并将数据写入其中。 然后,从属进程可以检查存储区域中的数据,并检查是否已更改。 但是,这只是解决此问题的许多方法之一。 您也可以考虑使用管道和三通。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM