in reply to Per IPC
I think you've mixed your terms but if I understand:
you want to run a child process that sends data to the parent process.
They should run at the same time
But the child stops writing output after a while.
If I understand, then:
Does the parent need the output of the child?
If not, use fork and exec.
If it does, the child is probably hanging when its output buffer is full. Try using a FIFO.
Re^2: Per IPC
by sourav007 (Initiate) on Jul 16, 2013 at 08:05 UTC
Thanks for the reply
FIFO means named PIPE mechanism you are telling to implement?
Yes I am facing the problem with buffer for that the child process is hanging after some time.
Please can you help me how to flush the buffer when it is filled up as the child process needs to continuously write to the pipe handle.
As I am having two separate scripts and I am to trying initiate the execution of one script(child process) from another script(parent process) using pipe mechanism such as open($fh, '-|', "./monitor.pl") here monitor.pl is the child process such that both of them executes asynchronously and at the same time as well as the output of the commands placed inside the while loop of the child process are written to the pipe handle continuously for that reason the buffer is getting filled up. So please suggest me the mechanism and appropriate location to flush the buffer such that the child process never hangs up as the buffer fills up.