¿Cómo puedo utilizar socketpair para tener comunicación bidireccional entre aplicaciones?

¿Cómo puedo utilizar socketpair para tener comunicación bidireccional entre aplicaciones?

¿Cómo puedo usar socketpair (C++ Linux) para tener comunicación bidireccional entre (dos) aplicaciones? Ambas aplicaciones se ejecutarán en el mismo hardware, por lo que busco la implementación de socketpair en la misma plataforma.

Tengo un programa de prueba simple que "conecta dos enchufes" y pasa datos entre ellos.

Cómo¿Les hago saber que cada enchufe¿Está en una aplicación DIFERENTE?

Tengo cierto éxito al realizar la misma tarea usando bluetooth (las aplicaciones se ejecutan en hardware diferente), ahora me gustaría aplicar un enfoque similar en el mismo hardware.

Se agradecen sugerencias.

Respuesta1

Si utiliza esta llamada. Luego tendrás algunas opciones (puede haber otras):

  • Llame a fork, para que tenga dos procesos con los sockets. Entonces puede hacer que un extremo sea utilizado por el padre y otro por el niño.
  • Como alternativa, utilice un socket con nombre. Luego, un extremo se lo debe al creador y el otro se adjunta a un nombre de archivo.

información relacionada