Maison > interface Web > js tutoriel > Comprendre l'objet de processus dans Node.js

Comprendre l'objet de processus dans Node.js

青灯夜游
Libérer: 2020-12-01 17:36:24
avant
3732 Les gens l'ont consulté

Comprendre l'objet de processus dans Node.js

Recommandations associées : "tutoriel node js"

L'objet processus est une variable globale et une instance EventEmitter qui fournit le courant Informations sur le processus Node.js et méthodes de fonctionnement

Informations système

L'objet de processus fournit des attributs pour renvoyer les informations système clés. Les attributs couramment utilisés sont

  • titre. : nom du processus, nœud de valeur par défaut, le programme peut être modifié pour rendre le journal des erreurs plus clair
  • pid : pid du processus actuel
  • ppid : pid du processus parent du processus actuel
  • plateforme : le système d'exploitation sur lequel le processus s'exécute (aix, drawin, freebsd, linux, openbsd, sunos, win32)
  • version : version Node.js
  • env : toutes les variables d'environnement du Shell actuel

stdin & stdout

Node.js et les objets d'interaction de périphérique d'entrée et de sortie standard sont également fournis via l'objet de processus

process.stdin.pipe(process.stdout)
Copier après la connexion

Une simple ligne de code peut y parvenir. Imprimer le contenu d'entrée de la console sur la console tel quel

Informations d'exécution

process.execPath

Le processus La propriété .execPath renvoie le fichier binaire Node qui exécute le script actuel Chemin absolu

process.argv

la propriété process.argv renvoie un tableau, le contenu correspond aux paramètres lors de l'exécution du. script, mais les deux premiers du tableau sont fixes

  • Le chemin absolu du fichier binaire Node qui exécute le script actuel

  • Le chemin absolu chemin du fichier d'exécution actuel

process.js

console.log(process.argv);
Copier après la connexion
node process.js a --b=2

[
  '/usr/local/bin/node',
  '/Users/undefined/node-demo/process.js',
  'a',
  '--b=2'
]
Copier après la connexion

process.execArgv

La propriété process.execArgv renvoie un tableau dont les membres sont la commande paramètres de ligne entre le fichier exécutable Node et le fichier de script lors de l'exécution du script sur la ligne de commande

process.js

console.log(process.execArgv);
Copier après la connexion
rrree

Méthodes de fonctionnement courantes

  • process.chdir () : Basculer le répertoire de travail vers le répertoire spécifié
  • process.cwd() : Retour pour exécuter le script actuel Le chemin du répertoire de travail, qui est le répertoire lors de l'exécution de la commande node
  • process.exit() : Quitte le processus en cours
  • process.memoryUsage() : Renvoie l'utilisation de la mémoire du processus Node.js

Événements de processus

L'objet processus est une instance de l'objet EventEmitter, qui peut surveiller certains événements de base du système. Les événements couramment utilisés sont

exit

Lorsque le processus Node.js est en cours. pour quitter pour l'une des raisons suivantes, l'événement exit sera déclenché :

  • Appelez explicitement la méthode process.exit()
  • Node.js La boucle d'événement n'a plus besoin pour effectuer un travail supplémentaire

Il n'y a aucun moyen d'empêcher la boucle d'événements de se terminer à ce moment-là, et le processus Node.js se terminera une fois que tous les exit écouteurs d'événements auront fini de s'exécuter

node --inspect process.js

[ '--inspect' ]
Copier après la connexion

uncaughtException

Lorsque le processus actuel renvoie une erreur non détectée, l'événement uncaughtException sera déclenché

process.on('exit', (code) => {
  console.log(`退出码: ${code}`);
});
Copier après la connexion

beforeExit

Lorsque Node.js efface son beforeExit l'événement est déclenché lorsque l'événement boucle et qu'il n'y a aucun autre travail à programmer. Normalement, le processus Node.js se terminera lorsqu'il n'y a pas de travail planifié, mais les auditeurs enregistrés sur l'événement beforeExit peuvent être appelés de manière asynchrone pour que le processus Node.js continue

process.on('uncaughtException', function (err) {
  console.error(err.stack);
});
Copier après la connexion

message

si utilisé Le canal IPC bifurque le processus Node.js Lorsque le processus enfant reçoit le message envoyé par le processus parent à l'aide de childprocess.send(), il déclenchera l'événement message

process.on('beforeExit', (code) => {
  console.log('进程 beforeExit 事件的代码: ', code);
});

process.on('exit', (code) => {
  console.log('进程 exit 事件的代码: ', code);
});

console.log('此消息最新显示');

// 打印:
// 此消息最新显示
// 进程 beforeExit 事件的代码: 0
// 进程 exit 事件的代码: 0
Copier après la connexion

process.nextTick(callback). )

processus. La méthode nextTick() ajoute le rappel à la file d'attente pour une exécution au moment suivant

Pour plus de connaissances sur la programmation, veuillez visiter : Cours vidéo de programmation ! !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:cnblogs.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal