什么是在IPC中使用Socket的优点和缺点

Ami*_*mar 5 c sockets

我在最近的一些采访中被问过这个问题,当有其他方法来执行IPC时,在IPC中使用Socket的优点和缺点是什么.没有找到确切的答案.

任何帮助将非常感激.

Bla*_*iev 6

与管道相比,IPC套接字的不同之处在于双向,即读取和写入可以在同一个描述符上完成.与插座不同,管道是单向的.如果要同时执行读取和写入操作,则必须保留一对描述符.

另一方面,管道在一定量的字节下读取或写入时保证原子性.一次写入少于PIPE_BUF字节的内容可保证在一个块中传递,并且从未被观察到部分.在这方面,套接字确实需要程序员更多的关注.

共享内存用于IPC时,需要程序员明确同步.它可能是最有效和最灵活的机制,但这会增加复杂性成本.