Boucle d'événements Node.js
Résultats de traduction:
Node.js est une plate-forme construite sur le runtime JavaScript Chrome.
Node.js est un environnement JavaScript côté serveur d'E/S basé sur le moteur V8 de Google. Le moteur V8 exécute Javascript très rapidement et offre de très bonnes performances.
Boucle d'événements Node.jssyntaxe
Node.js est une application à processus unique et à thread unique, mais en raison des interfaces de rappel d'exécution asynchrone fournies par le moteur V8, une grande quantité de concurrence peut être gérée via ces interfaces, les performances sont donc très élevées.
Presque toutes les API de Node.js prennent en charge les fonctions de rappel.
Node.js Fondamentalement, tous les mécanismes d'événements sont implémentés à l'aide du modèle d'observateur dans le modèle de conception.
Le thread unique Node.js est similaire à la saisie d'une boucle d'événement while (true) jusqu'à ce qu'aucun observateur d'événement ne se termine. Chaque événement asynchrone génère un observateur d'événement. Si un événement se produit, la fonction de rappel est appelée.
Boucle d'événements Node.jsexemple
Créez le fichier main.js, le code est le suivant :
// 引入 events 模块 var events = require('events'); // 创建 eventEmitter 对象 var eventEmitter = new events.EventEmitter(); // 创建事件处理程序 var connectHandler = function connected() { console.log('连接成功。'); // 触发 data_received 事件 eventEmitter.emit('data_received');} // 绑定 connection 事件处理程序 eventEmitter.on('connection', connectHandler); // 使用匿名函数绑定 data_received 事件 eventEmitter.on('data_received', function(){ console.log('数据接收成功。');}); // 触发 connection 事件 eventEmitter.emit('connection'); console.log("程序执行完毕。");