unix域套接字VS命名管道?

看了一个unix命名的套接字,我认为他们是命名管道。我看着名字管道,没有看到很多的区别。我看到他们被初始化不同,但这是我注意到的唯一的事情。两者都使用C写/读功能和工作相似的AFAIK。

unix域套接字和命名管道之间的区别是什么?什么时候我会选择一个在另一个?我应该使用认情况下(像我如何使用使用矢量认在C比使用deque,列表或其他如果我有需要)?

UNIX域套接字通常比命名管道更灵活。它们的一些优点是:

>您可以将它们用于两个以上的进程通信(例如,服务器进程与潜在的多个客户端进程连接);
>它们是双向的;
>他们支持在进程之间传递内核验证的UID / GID凭据;
>它们支持在进程之间传递文件描述符;
>它们支持包和排序包模式。

要使用许多这些功能,您需要使用send()/ recv()系列调用系列,而不是write()/ read()。

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...