Tengo un escenario donde creé un conducto para la comunicación entre dos elementos secundarios y secundarios. El padre escribe datos (usando la función de escritura) en el conducto y cierra el descriptor de archivo respectivo. El problema es cuando quiero volver a escribir datos en la tubería, la función de escritura devuelve el código de error -1. Creo que es porque el final de la escritura se ha cerrado en la iteración anterior. Luego, cómo abrir el descriptor de archivo correspondiente una vez que se ha cerrado.Cómo volver a abrir un descriptor de archivo cerrado
Intenté usar la función de apertura() que requiere la ruta a algún archivo como argumento. Pero no estoy usando ningún archivo en mi aplicación. Tengo descripciones de archivos simples (int arr [2]).
¿Es posible lograr el escenario anterior con tuberías ????
si nosotros no cerrar el descriptor de fichero, no va a enviar EOF a la corriente respectiva. Por lo tanto, en el proceso secundario esperará continuamente por la entrada. Pero, quiero escribir un número limitado de veces en la secuencia y leer al mismo tiempo en el otro extremo de la tubería – chaitu
@chaitu: Es cierto que si no cierra el final de escritura, el final de lectura no se mostrará al final del archivo . Esto significa que debe usar algo que no sea el final del archivo para indicar el final de su mensaje, si desea enviar más mensajes al niño (por lo general, usaría un mensaje de longitud fija para que el niño sepa por cuánto tiempo) es). – caf