Найти msqid с помощью известного key_t в linux c - PullRequest
0 голосов
/ 26 октября 2018

У меня есть два независимых процесса, оба создают очередь сообщений, используя msgget() с одним и тем же ключом (key_t = 9189, предоставленный как строка аргумента cmd для обоих процессов), и они успешно отправляют и получают сообщения.
Теперь у меня естьтретий независимый процесс мониторинга (поставляется с тем же key_t = 9189), который не имеет ничего общего с сообщениями, но он хочет отслеживать состояние очереди сообщений, поэтому я думаю использовать msgctl(), но ему нужно int msqid какАргумент.

--- Итак, как найти msqid, используя известные key_t?.
--- Если мне нужно использовать msgget(), чтобы найти msqid, так как этот процесс мониторинга имеетдля мониторинга состояния нескольких таких очередей сообщений, разве использование msgget() создаст издержки только для получения msqid?

1 Ответ

0 голосов
/ 26 октября 2018

Вы можете получить msqid только по msgget, просто и просто.

...