UNIX套接字:客户端是否可以读取另一个客户端的数据?

时间:2012-02-15 14:38:27

标签: sockets network-programming

考虑使用UNIX套接字作为IPC机制的多个客户端进程联系的服务器进程。

每个客户端代码都在无限循环中运行,尝试从/向套接字读取和写入数据。

我的问题:客户如何知道它不是在读取其他流程要读取的数据?服务器进程正在将数据写入单个套接字,对吧?

对于TCP / IP,这个问题没有意义 - 套接字意味着一个元组<remote host, remote port, local host, local port, protocol>,因此在试图访问服务器的不同机器上运行的进程永远不会读取彼此的数据。

但对于UNIX套接字,它只是一个文件吗?或者我错过了什么?

1 个答案:

答案 0 :(得分:2)

  • 在服务器上,每个客户端都有自己的套接字。显然,您不会读取发送给其他客户端的数据。
  • UNIX套接字不是文件,但可以通过文件API调用访问其许多功能。