什么是IPC和Unix域套接字和命名管道之间的差异?
我从各种书籍中得到了模糊的定义,但无法明确应该在哪里使用哪一本.
正如qrdl所说,UNIX域套接字和命名管道都是IPC机制.
在这两个中,命名管道更易于使用,但不如UNIX域套接字灵活.例如,如果您可能期望每个写入过程有多个读取过程,则必须使用UNIX域套接字; 如果您希望在执行写入过程期间停止并启动读取过程,那么您将需要UNIX域套接字.
几乎任何两个进程相互通信的方式都可以被认为是IPC的一种形式.
例如:
未命名的管道(cat file.txt | grep foo)或命名管道
Unix域套接字
TCP或UDP套接字
Linux上的Netlink套接字
各种共享内存机制,如内存映射文件
高速消息传递,如ZeroMQ