我有两个独立的进程,两个进程都使用msgget()
使用相同的密钥(key_t = 9189,作为两个进程的cmd行arg提供),它们成功发送和接收消息。
现在,我有第三个独立的监视过程(提供了相同的key_t = 9189),它与消息无关,但是它想监视消息队列的状态,因此我想使用msgctl()
,但是需要int msqid
作为参数。
---那么如何使用已知的msqid
查找key_t
?。
---如果我必须使用msgget()
查找msqid
,因为此监视过程必须监视几个这样的消息队列的状态,否则使用msgget()
会产生开销,获得msqid
?
答案 0 :(得分:0)
您只能简单地通过msqid
获得msgget
。