Рассмотрим процесс сервера, к которому подключаются несколько клиентских процессов, использующих сокет UNIX в качестве механизма IPC.
Каждый клиентский код выполняется в бесконечном цикле, пытаясь читать и записывать данные из / в сокет.
Мой вопрос: как клиент узнает, что он не читает данные, предназначенные для чтения каким-либо другим процессом?Серверный процесс записывает данные в один сокет, верно?
Для TCP / IP этот вопрос не имеет смысла - сокет будет означать кортеж <remote host, remote port, local host, local port, protocol>
, поэтому процессы, работающие на разных компьютерах, пытающихся получить доступ к серверу, никогда не смогут читать данные друг друга.
Но для сокетов UNIX это просто файл, верно?Или я что-то упустил?