Me gustaría crear un conducto con nombre, como el creado por "mkfifo", pero una advertencia. Quiero que la tubería sea bidireccional. Es decir, quiero que el proceso A escriba en la fifo y el proceso B que lea de ella, y viceversa. Una tubería creada por "mkfifo" permite que el proceso A lea los datos escritos en la tubería. Normalmente usaría dos tuberías, pero estoy tratando de simular un dispositivo real, por lo que me gustaría que la semántica de open(), read(), write(), etc. sea lo más similar posible al dispositivo real. ¿Alguien sabe de una técnica para lograr esto sin recurrir a dos tuberías o un zócalo con nombre?Canalización con nombre similar a la creación "mkfifo", pero bidireccional
7
A
Respuesta
5
Utilice un socket de dominio Unix.
Oh, dijiste que no querías usar la única solución disponible: un socket de dominio Unix.
En ese caso, tiene que abrir dos tubos con nombre, o prescindir de él. O escriba su propio controlador de dispositivo para ellos, por supuesto, podría hacerlo para los sistemas de código abierto, de todos modos; podría ser más difícil para los sistemas de fuente cerrada (Windows, AIX, HP-UX).
4
O pty
("interfaz de pseudo-terminal"). man pty
.
Cuestiones relacionadas
- 1. Creación de canalización con nombre de Windows 8
- 2. ¿Cómo crear named pipe (mkfifo) en Android?
- 3. ¿Hay una interfaz similar a Callable pero con argumentos?
- 4. Breaking ReadFile() bloqueo - canalización con nombre (API de Windows)
- 5. Canalización con nombre que se cierra prematuramente en el script?
- 6. Bidireccional A * (A-star) Buscar
- 7. ¿Cómo realizo un fopen sin bloqueo en una tubería con nombre (mkfifo)?
- 8. Marco similar a Adobe Flex con HTML5
- 9. Generar nombre de archivo con la fecha de creación
- 10. Buscando un complemento JQuery similar a Accordian, pero que permite varias secciones abiertas a la vez
- 11. objetos Python - evitando la creación de atributo con nombre desconocido
- 12. Desempaquetado Tuple Similar a Python, pero en Common Lisp
- 13. Cómo imprimir información similar a phpinfo() pero para ASP.NET?
- 14. one-to-many bidireccional con
- 15. sintaxis similar pero una muestra de error pero otra no
- 16. Herramienta Scala similar a Linqpad
- 17. Agregue métodos personalizados a la canalización de activos Rails 3.1?
- 18. Cómo asignar espacio de nombre a nuestro JS para su uso con la canalización de activos de Rails
- 19. Creación de variables con nombre dinámico a partir de la entrada del usuario
- 20. UITableView con comportamiento similar a paginación personalizada
- 21. ¿Se puede leer kdb desde una tubería con nombre?
- 22. Jackson confundido con una relación uno a muchos bidireccional
- 23. ¿Cómo detectar una desconexión del cliente utilizando un cliente/servidor de canalización con nombre?
- 24. NHibernate: asignación de uno a muchos bidireccional con semántica IList
- 25. Diccionario bidireccional 1 a 1 en C#
- 26. Agregar HAML a la canalización de activos de Rails
- 27. NHibernate bidireccional muchos-a-muchos asociación
- 28. ¿Alguna herramienta similar a la aplicación Hyperterminal?
- 29. Creación de un administrado (/ CLR) C++ ensamblado con nombre-
- 30. ternario Operador similar a:?
Una pty viene con un montón de cosas que no desea, por lo general. Como todo el manejo de la disciplina terminal. Pero está pensando fuera de la caja mencionarlo. –