in reply to child and parent process communication

Whatever method you use, shared memory or message queues, you still have a synchronisation issue. Personally I have used named pipes (FIFOs) because they are simple - really.
You need to indicate which child process the message is for. That can be done with message queues by using the child's PID as the type, or you could append the PID to a FIFO or shmem name. If you try to use one communial area then there are scheduling and synchronisation issues.
An alternative to using signals is to have a thread doing nothing but waiting on communication from the parent - most of the time it will be blocked. I have used this method, but not in Perl.
  • Comment on Re: child and parent process communication