|

楼主 |
发表于 2004-2-8 00:45:02
|
显示全部楼层
非常感谢CU的forest077 给出解答!!
进程间是需要通讯的。比方说,在大型工程里面,在一个系统里面可能是三层架构,简单点说是三个进程,一个管接收,一个管处理,一个管发送。那么管接收的那个进程怎样把接收到的内容交给处理的进程,管处理的进程又怎样把处理完的内容交给发送进程呢?这就要用到本机内的进程间通讯。通常有两种方法,一种是通过socket在本机两个进程间传递消息,一种就是通过消息队列。前者速度慢,后者快。
消息队列可以容纳上千字节的内容,足以供本机内的两个进程间传递消息有余。
信号量的功能和消息队列完全不同,一般用来设置共享访问时候的锁。它不能容纳很多字节的报文,只拥有一个信号量集合,集合内含若干信号量,进程之间通过信号量值为多少来互相传递一些简单的消息。由于信号量操作函数是原子操作,因而这个特性被用来对共享数据设置锁,不同的进程就可以互斥的访问共享数据了。 |
|