首页 > 试题广场 >

进程间通讯的方式中哪种的访问速度最快?

[单选题]

进程间通讯的方式中哪种的访问速度最快?

  • 管道
  • 消息队列
  • 共享内存
  • 套接字
  • 管道:速度慢,容量有限
  • 消息队列:容量受到系统限制,且要注意第一次读的时候,要考虑上一次没有读完数据的问题。
  • 信号量:不能传递复杂消息,只能用来同步
  • 共享内存区:能够很容易控制容量,速度快,但要保持同步,比如一个进程在写的时候,另一个进程要注意读写的问题,相当于线程中的线程安全,当然,共享内存区同样可以用作线程间通讯,不过没这个必要,线程间本来就已经共享了一块内存的。

详见:http://blog.csdn.net/mysteryhaohao/article/details/54411133
发表于 2017-01-19 11:00:19 回复(0)
一句话 管道实质是共享文件 访问磁盘 套接字和消息队列都能用于计算机网络通信 共享内存就是在内存 你说哪个快
发表于 2017-11-24 21:33:24 回复(0)
管道通信是一个共享文件,链接一个读进程和一个写进程,进程需要读写数据。 消息队列 将数据格式化为信息,就是计算机网络中的报文。 套接字通信除了基本数据外其中还有很多其他信息,比如目的地址,端口号,传输层协议,进程的网络地址,需要读写更多数据,比较慢。 共享存储 共享存储区的数据,等于直接读内存,最快的。
发表于 2019-12-11 14:43:19 回复(0)
管道分有名管道和无名管道,无名管道有写数据,读数据。有名管道用read,write函数读写数据,这样以来就执行了两个动作,一个写动作,访问内存,一个读动作访问内存。

消息队列也是要进行读写操作,他有自己的读写函数,为msgsnd写,msgrnd读,进行了两次内存访问

共享内存是发送端将数据写入内存,而接收端直接打印内存的内容就好了。直接访问地址

套接字,我还不知道。
发表于 2023-08-03 19:44:20 回复(0)
管道通信是一个共享文件,链接一个读进程和一个写进程,进程需要读写数据。 
消息队列 将数据格式化为信息,就是计算机网络中的报文。
套接字通信除了基本数据外其中还有很多其他信息,比如目的地址,端口号,传输层协议,进程的网络地址,需要读写更多数据,比较慢。 
共享内存 共享存储区的数据,等于直接读内存,最快的。
发表于 2022-11-12 11:01:28 回复(0)