我对同一进程父进程的子进程之间的通信存在问题。
进程我只有在收到来自的信号SIGRTMIN后才能继续工作 过程j = i-1(兄弟离开)。
过程只有在从过程j = i + 1>(兄弟右)接收到SIGRTMIN + 1信号后才能完成。
父子过程只有在所有孩子完成后才能完成。
问题是: 不使用IPC(消息队列,共享内存,信号量)或IO(套接字,管道,管道,文件),进程如何知道进程ID它的兄弟离开了,兄弟的进程ID正确。
For the question of brother left,
我使用进程ID数组。更清楚的是,在父进程中,数组将保留它创建的每个子进程的进程ID,当创建进程时,它知道进程i-1的进程id(进程ID = N-i + 1)。
但我不知道如何获得流程i + 1(兄弟权利)的进程ID。
答案 0 :(得分:0)
使用实时信号,您可以发送一个值。因此,当我向他的左兄弟发送SIGRTMIN信号的过程时,他可以发送他的pid,)
希望它会对你有所帮助。