2013-03-11 104 views
0

所以在C++中,我有一個分叉N個子進程的父進程。父級及其所有子級都可以訪問消息隊列,並且我希望父級繼續「監視」消息隊列,並且每次在消息隊列中出現來自子進程的新消息時執行msgrcv()。我會如何去做這件事?我已閱讀消息隊列數據結構中的msg_qnum變量,但我不確定如何使用它。如何持續監視消息隊列?

在此先感謝您的任何想法。

回答

2

通常的方法只是在循環中調用msvrcv。呼叫將被阻塞,直到收到一條消息,此時過程將繼續。在處理完消息後,它將循環回到msgrcv呼叫,該呼叫將阻塞,直至收到下一條消息。