在一个进程中有几个进程和一些线程。所有的流程都需要相互交流。一个进程中的线程需要与进程交互(主线程)。我想知道如果这个设计作品:请注释,如果这适用于进程和线程之间的通信
每一道工序都有MSG队列(使用msgget()的msgsnd,msgrcv()),以便它们可以被Linux API互相交谈。
每个线程都有一个msg队列(也使用msgget,msgsnd,msgrcv),以便它可以与主线程和其他线程交谈。所以,这个线程驻留的进程将拥有进程队列和线程队列,是否有任何问题?
我很担心项目2,因为我学到的是msgget,msgsnd,msgrcv用于进程间通信。我阅读有关这些功能的手册。看起来没有提及这些功能是否支持线程。另外,请你参考一下最好的在线Linux/Unix手册吗?我不擅长它,因为我觉得很难找到我想要的东西,如果函数或信号量可以支持线程/手动。愚蠢的问题, :)。
请帮助。谢谢。
感谢您的快速响应。我很担心操作系统如何一次识别哪个进程/线程拥有此队列ID,因为此消息队列函数总是在IPC部分提及。也许我正在过度看待它。 :) 再次感谢。 – 2012-03-09 03:22:08