What is the process to run sub-process with pipes that connect both input and output?
Answers were Sorted based on User's Feedback
Answer / chaitanya
The popen2() module is used to run the sub-process but due to some difficulty in processing like creation of deadlock that keep a process blocked that wait for the output from the child and child is waiting for the input. The dead lock occurs due to the fact that parent and child doesn’t have the synchronization and both are waiting to get the processor to provide the resources to one another. Use of popen3() method allow the reading of stdout and stderr to take place where the internal buffer increases and there is no read() takes place to share the resources. popen2() take care of the deadlock by providing the methods like wait() and waitpid() that finishes a process first and when a request comes it hands over the responsibility to the process that is waiting for the resources. The program is used to show the process and run it.
import popen2
fromchild, tochild = popen2.popen2("command")
tochild.write("input
")
tochild.flush()
output = fromchild.readline()
| Is This Answer Correct ? | 2 Yes | 0 No |
Answer / siva kumar reddy dandu
try to use subprocess module
x = subprocess.popen(command)
x.read()
| Is This Answer Correct ? | 0 Yes | 0 No |
How does ternary operator work in python?
What does %s mean in python?
How will you verify different flags at once?
What is a class definition in python?
What is the use of pycharm?
How do you clear a python shell?
What is the purpose of uuid?
What is a closure in python?
How does numpy arange work?
Explain what is Flask & its benefits?
What are the differences in the deep and shallow copy?
Explain about different blocks in exception handling?