Python 3 - Método os.pipe ()

Descrição

O método pipe() cria um canal e retorna um par de descritores de arquivo (r, w) utilizáveis ​​para leitura e gravação, respectivamente

Sintaxe

A seguir está a sintaxe para pipe() método -

os.pipe()

Parâmetros

NA

Valor de retorno

Este método retorna um par de descritores de arquivo.

Exemplo

O exemplo a seguir mostra o uso do método pipe ().

#!/usr/bin/python3
import os, sys

print ("The child will write text to a pipe and ")
print ("the parent will read the text written by child...")

# file descriptors r, w for reading and writing
r, w = os.pipe() 

processid = os.fork()
if processid:
   # This is the parent process 
   # Closes file descriptor w
   os.close(w)
   r = os.fdopen(r)
   print ("Parent reading")
   str = r.read()
   print ("text =", str   )
   sys.exit(0)
else:
   # This is the child process
   os.close(r)
   w = os.fdopen(w, 'w')
   print ("Child writing")
   w.write("Text written by child...")
   w.close()
   print ("Child closing")
   sys.exit(0)

Resultado

Quando executamos o programa acima, ele produz o seguinte resultado -

The child will write text to a pipe and 
the parent will read the text written by child...
Parent reading
('text =', 'Text written by child...')
The child will write text to a pipe and 
the parent will read the text written by child...
Child writing
Child closing.