Как использовать socketpair для двусторонней связи между приложениями?

Как использовать socketpair для двусторонней связи между приложениями?

Как использовать socketpair (C++ Linux) для двусторонней связи между (двумя) приложениями? Оба приложения будут работать на одном и том же оборудовании, поэтому я ищу реализацию socketpair на одной платформе.

У меня есть простая тестовая программа, которая «соединяет два сокета» и передает данные между ними.

Какя даю им знать, что каждая розетканаходится в ДРУГОМ приложении?

У меня есть некоторый успех в выполнении той же задачи с использованием Bluetooth (приложения работают на разном оборудовании), теперь я хотел бы применить аналогичный подход на том же оборудовании.

Предложения приветствуются.

решение1

Если вы используете этот вызов. Тогда у вас будет несколько вариантов выбора (могут быть и другие):

  • Вызовите fork, так что у вас будет два процесса с сокетами. Тогда вы можете использовать один конец родителем, а другой — потомком.
  • В качестве альтернативы используйте именованный сокет. Тогда один конец принадлежит создателю, а другой прикрепляется к имени файла.

Связанный контент