diff --git a/doc/api/child_process.md b/doc/api/child_process.md index db70d06644e500..e4799fece771f8 100644 --- a/doc/api/child_process.md +++ b/doc/api/child_process.md @@ -112,6 +112,9 @@ exec('my.bat', (err, stdout, stderr) => { ``` ### child_process.exec(command[, options][, callback]) + * `command` {String} The command to run, with space-separated arguments * `options` {Object} @@ -189,6 +192,9 @@ terminated. replace the existing process and uses a shell to execute the command.* ### child_process.execFile(file[, args][, options][, callback]) + * `file` {String} The name or path of the executable file to run * `args` {Array} List of string arguments @@ -234,6 +240,9 @@ stderr output. If `encoding` is `'buffer'`, or an unrecognized character encoding, `Buffer` objects will be passed to the callback instead. ### child_process.fork(modulePath[, args][, options]) + * `modulePath` {String} The module to run in the child * `args` {Array} List of string arguments @@ -278,6 +287,9 @@ output on this fd is expected to be line delimited JSON objects. not clone the current process.* ### child_process.spawn(command[, args][, options]) + * `command` {String} The command to run * `args` {Array} List of string arguments @@ -383,6 +395,9 @@ child.on('error', (err) => { ``` #### options.detached + On Windows, setting `options.detached` to `true` makes it possible for the child process to continue running after the parent exits. The child will have @@ -437,6 +452,9 @@ child.unref(); ``` #### options.stdio + The `options.stdio` option is used to configure the pipes that are established between the parent and child process. By default, the child's stdin, stdout, @@ -523,6 +541,9 @@ scripting tasks and for simplifying the loading/processing of application configuration at startup. ### child_process.execFileSync(file[, args][, options]) + * `file` {String} The name or path of the executable file to run * `args` {Array} List of string arguments @@ -556,6 +577,9 @@ throw. The [`Error`][] object will contain the entire result from [`child_process.spawnSync()`][] ### child_process.execSync(command[, options]) + * `command` {String} The command to run * `options` {Object} @@ -592,6 +616,9 @@ throw. The [`Error`][] object will contain the entire result from [`child_process.spawnSync()`][] ### child_process.spawnSync(command[, args][, options]) + * `command` {String} The command to run * `args` {Array} List of string arguments @@ -626,6 +653,9 @@ completely exited. Note that if the process intercepts and handles the process has exited. ## Class: ChildProcess + Instances of the `ChildProcess` class are [`EventEmitters`][] that represent spawned child processes. @@ -636,6 +666,9 @@ use the [`child_process.spawn()`][], [`child_process.exec()`][], instances of `ChildProcess`. ### Event: 'close' + * `code` {Number} the exit code if the child exited on its own. * `signal` {String} the signal by which the child process was terminated. @@ -645,13 +678,16 @@ been closed. This is distinct from the `'exit'` event, since multiple processes might share the same stdio streams. ### Event: 'disconnect' + The `'disconnect'` event is emitted after calling the `ChildProcess.disconnect()` method in the parent or child process. After disconnecting it is no longer possible to send or receive messages, and the `ChildProcess.connected` property is false. -### Event: 'error' +### Event: 'error' * `err` {Error} the error. @@ -667,7 +703,10 @@ to guard against accidentally invoking handler functions multiple times. See also [`ChildProcess#kill()`][] and [`ChildProcess#send()`][]. -### Event: 'exit' +### Event: 'exit' + * `code` {Number} the exit code if the child exited on its own. * `signal` {String} the signal by which the child process was terminated. @@ -688,6 +727,9 @@ and then will re-raise the handled signal. See `waitpid(2)`. ### Event: 'message' + * `message` {Object} a parsed JSON object or primitive value. * `sendHandle` {Handle} a [`net.Socket`][] or [`net.Server`][] object, or @@ -697,6 +739,9 @@ The `'message'` event is triggered when a child process uses `process.send()` to send messages. ### child.connected + * {Boolean} Set to false after `.disconnect` is called @@ -705,6 +750,9 @@ and receive messages from a child process. When `child.connected` is false, it is no longer possible to send or receive messages. ### child.disconnect() + Closes the IPC channel between parent and child, allowing the child to exit gracefully once there are no other connections keeping it alive. After calling @@ -721,6 +769,9 @@ Note that when the child process is a Node.js instance (e.g. spawned using within the child process to close the IPC channel as well. ### child.kill([signal]) + * `signal` {String} @@ -775,6 +826,9 @@ setTimeout(() => { ``` ### child.pid + * {Number} Integer @@ -791,6 +845,9 @@ grep.stdin.end(); ``` ### child.send(message[, sendHandle][, callback]) + * `message` {Object} * `sendHandle` {Handle} @@ -936,6 +993,9 @@ this occurs. *Note: this function uses [`JSON.stringify()`][] internally to serialize the `message`.* ### child.stderr + * {Stream} @@ -948,6 +1008,9 @@ then this will be `undefined`. the same value. ### child.stdin + * {Stream} @@ -963,6 +1026,9 @@ then this will be `undefined`. the same value. ### child.stdio + * {Array} @@ -1000,6 +1066,9 @@ assert.equal(child.stdio[2], child.stderr); ``` ### child.stdout + * {Stream}