Proceso que crea el pipe y escribe
1 2 3 4 5 6 7 8 9 10 11 |
import os # Crear el pipe con nombre pipe_name = 'my_pipe' if not os.path.exists(pipe_name): os.mkfifo(pipe_name) # Escribir en el pipe desde el proceso 1 pipe = os.open(pipe_name, os.O_WRONLY) os.write(pipe, 'Mensaje desde proceso 1'.encode()) os.close(pipe) |
Proceso que lee el pipe y escribe
1 2 3 4 5 6 7 8 9 10 11 12 |
import os # Crear el pipe con nombre pipe_name = 'my_pipe' if not os.path.exists(pipe_name): os.mkfifo(pipe_name) # Leer desde el pipe en el proceso 2 pipe = os.open(pipe_name, os.O_RDONLY) msg = os.read(pipe, 1024).decode() os.close(pipe) print(f'Recibido: {msg}') |
En este ejemplo, el proceso 1 escribe un mensaje en el pipe con nombre «my_pipe», mientras que el proceso 2 lee el mensaje del pipe.
Para ejecutar el ejemplo, primero debes ejecutar el proceso 1 en una consola y, a continuación, ejecutar el proceso 2 en otra consola diferente. El orden no importa, ya que ambos procesos esperarán a que se cree el pipe antes de continuar.
