Le module Child Process dans Node.js permet de créer et de gérer des processus enfants. Il peut être utilisé pour exécuter des commandes shell ou des scripts, lire des flux de données à partir de ces commandes, ou créer des processus “ponts” pour communiquer entre différents systèmes.
Voici comment vous pouvez utiliser ce module :
1. Importez tout d’abord le module dans votre script :
```
const child_process = require(‘child_process’);
```
1. Créer un processus enfant pour exécuter une commande shell en utilisant la méthode `.exec`:
```
child_process.exec(‘dir’, function(error, stdout, stderr) {
if (error) {
console.error(‘Erreur lors de l\‘exécution de la commande.’, error);
return;
}
console.log(‘Résultat de la commande : ‘, stdout);
});
```
1. Créer un processus enfant pour exécuter un autre script Node.js avec la méthode `.fork` :
```
let child = child_process.fork(‘script.js’);
```
1. Écouter les messages en provenance du processus enfant :
```
child.on(‘message’, function(message) {
console.log(‘Message du processus enfant : ‘, message);
});
```
1. Envoyer un message au processus enfant :
```
child.send({ hello: ‘world’ });
```
Notez que la méthode `.fork` est une fonction spéciale pour créer des processus Node.js. Si vous voulez créer un processus général (comme une commande shell), vous devriez utiliser `.spawn` ou `.exec` à la place.
Gardez également à l’esprit que le multithreading en Node.js ne fonctionne pas de la même manière que dans d’autres langages comme Java. Node.js est monothreadé par défaut, et il utilise un modèle d’E/S non bloquant pour réaliser le multitâche.