当前位置: 技术问答>JavaScript中的消息框(警告框,确认框,提示框)语法
iis7站长之家
关于消息队列和进程互斥的问题,虽然比较急但还是祝各位新年快乐
来源: 互联网 发布时间:2016-07-27
本文导语: 利用消息队列实现无亲缘的多进程间通信。 进程A向消息队列中写入10000以内的偶数。 进程B向消息队列中写入10000以内能被3整除的数。 进程C通过消息队列接收A进程所发的数据,并将其保存到test.dat.v1文件中。 进程D...
利用消息队列实现无亲缘的多进程间通信。
进程A向消息队列中写入10000以内的偶数。
进程B向消息队列中写入10000以内能被3整除的数。
进程C通过消息队列接收A进程所发的数据,并将其保存到test.dat.v1文件中。
进程D通过消息队列接收B进程所发的数据,并将其在屏幕上每行10个进行显示。
注意:
1.所有进程的通信均通过同一个消息队列,即程序中只能用一个消息队列完成通信。
2.注意所有进程之间的同步互斥。
能给出源代码最好,关于进程那块儿弄不太懂,尤其是互斥.给点儿建议和参考的程序也行.谢啦
进程A向消息队列中写入10000以内的偶数。
进程B向消息队列中写入10000以内能被3整除的数。
进程C通过消息队列接收A进程所发的数据,并将其保存到test.dat.v1文件中。
进程D通过消息队列接收B进程所发的数据,并将其在屏幕上每行10个进行显示。
注意:
1.所有进程的通信均通过同一个消息队列,即程序中只能用一个消息队列完成通信。
2.注意所有进程之间的同步互斥。
能给出源代码最好,关于进程那块儿弄不太懂,尤其是互斥.给点儿建议和参考的程序也行.谢啦
|
如果是IPC消息队列,同一个消息队列可以设置多个消息类型
每个消息类型的消息自成一个队列
所以a和c公用一个消息类型,b和d公用一个消息类型
同步:只有a和c之间有联系,b和d之间有联系,一个写者写,一个读者读,消息队列的读写可以设置成阻塞方式,简单地就实现了同步
互斥:只有a和c之间有联系,b和d之间有联系,都是一个写者一个读者,不用考虑互斥
最迷惑人的就是均通过同一个消息队列
但是同一个消息队列内部是可以分成不同类型的消息的。这里只要两种消息类型就够了,ac用一种,bd用一种
一时没时间,不然代码都帮你敲出来了
每个消息类型的消息自成一个队列
所以a和c公用一个消息类型,b和d公用一个消息类型
同步:只有a和c之间有联系,b和d之间有联系,一个写者写,一个读者读,消息队列的读写可以设置成阻塞方式,简单地就实现了同步
互斥:只有a和c之间有联系,b和d之间有联系,都是一个写者一个读者,不用考虑互斥
最迷惑人的就是均通过同一个消息队列
但是同一个消息队列内部是可以分成不同类型的消息的。这里只要两种消息类型就够了,ac用一种,bd用一种
一时没时间,不然代码都帮你敲出来了
|
花了点时间,想到一个大概的模型,用管道做过试验可以用.
doA_C 函数可以调用fork,再生成两个进程,doB_D也一样,在这里可以共用管道或消息队列(我不常用这个).
向管道输入数据时要用互斥锁保护,不保护数据会乱,这个方法很多.
然后doA_C和doB_D可以做你想做的任何事情, 可以参考一下.
有问题,欢迎探讨.
#define NP 2
for (i=0; i