使用命名管道和信号在3个进程之间进行通信的最佳方式。

时间:2019-01-03 18:58:04

标签: c unix signals ipc mkfifo

所以我的任务是使用信号和命名管道在3个进程之间进行通信。       它必须像这样工作:       我要关闭所有程序的所有程序并释放所有进程的资源,为此,我将SIGUSR1发送到进程B(例如),该进程将有关我要执行的操作的数据保存在管道中,将信号发送给其他2个进程,他们读取管道并根据在管道中写入的内容关闭,停止彼此之间的通信或继续通信(使用msg队列)。

我的问题是我只能在它们之间制作6个管道,因此每个管道只有一个读者和一个作家,例如1-2 2-1、1-3、3-1等,但这需要大量的工作,因此我想知道是否会有更简单的解决方案来解决这个问题。

我想在所有进程中使用一个管道并以读写方式打开它,尽管我意识到一个管道可以有一个写入者和读取者。

有人可以解决这个问题吗?

0 个答案:

没有答案