Mengirim pesan dari proses anak ke proses induk saat membuat proses_anak dengan exec()

Saya memiliki proses induk di Node.JS yang membuat proses anak melalui panggilan exec. Saya ingin menunggu hingga proses anak selesai dan mengembalikan status proses anak.

Saya tidak ingin menggunakan spawn atau fork.

Saya membuat proses_anak dengan require('child_process').exec

Saya memerlukan proses anak untuk mengirim pesan ke proses induk melalui IPC:

function foo()
{    
    const exec = require('child_process').exec;

     const cmd = `cd /usr/lib/bin' && db-migrate --config "config/${environmentName}.json" -e ${environmentName} -v true up  --force-exit`;

    const child = exec(cmd, (error, stdout, stderr) => {
         //...
    });

    child.on('exit', (code) => {
       //from here i want to know if there was a problem in child process
       //can I use IPC to send messages?
    });
     //wants to return the child status code from here
 return child_status_code;
}

Bagaimana saya bisa mengatasi masalah ini?

Bagaimana saya bisa menggunakan IPC dari proses anak ke proses induk?


person Tal Avissar    schedule 31.03.2016    source sumber


Jawaban (1)


Jika ada saluran IPC yang dibuat dalam proses, Anda dapat mengirim pesan dari anak ke orang tua dengan "process.send". Hal ini ditangani dalam dokumentasi Nodejs. Saluran IPC hanya tersedia dengan "fork". "fork" telah parameter pertama adalah jalur modul.

person RaphaelYu    schedule 04.07.2017