全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Node.js  事件循环详解及实例

 Node.js  事件循环详解及实例

  • Node.js 是单进程单线程应用程序,但是通过事件和回调支持并发,所以性能非常高。
  • Node.js 的每一个 API 都是异步的,并作为一个独立线程运行,使用异步函数调用,并处理并发。
  • Node.js 基本上所有的事件机制都是用设计模式中观察者模式实现。
  • Node.js 单线程类似进入一个while(true)的事件循环,直到没有事件观察者退出,每个异步事件都生成一个事件观察者,如果有事件发生就调用该回调函数.

Node.js 有多个内置的事件,我们可以通过引入 events 模块,并通过实例化 EventEmitter 类来绑定和监听事件,如下实例:

// 引入 events 模块
var events = require('events');
// 创建 eventEmitter 对象
var eventEmitter = new events.EventEmitter();

// 创建事件处理程序
var connectHandler = function connected() {
  console.log(1);

  // 触发 data_received 事件 
  eventEmitter.emit('data_received');
}

// 绑定 connection 事件处理程序
eventEmitter.on('connection', connectHandler);

// 使用匿名函数绑定 data_received 事件
eventEmitter.on('data_received', function(){
  console.log(2);
});

// 触发 connection 事件 
eventEmitter.emit('connection');

console.log(3);

在 Node 应用程序中,执行异步操作的函数将回调函数作为最后一个参数, 回调函数接收错误对象作为第一个参数。

var fs = require("fs")
fs.readFile('input.txt',function(err,data){
if(err)
  console.log(err)
else
  console.log(data.toString())
})
console.log("程序执行完成")

如有疑问,请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# Node.js  # 事件循环  # 事件循环实例  # node.js中对Event Loop事件循环的理解与应用实例分析  # 深入浅析Node.js 事件循环、定时器和process.nextTick()  # 实例分析JS与Node.js中的事件循环  # 深入理解Node.js 事件循环和回调函数  # 深入浅析Node.js 事件循环  # Node.js事件循环(Event Loop)和线程池详解  # 小结Node.js中非阻塞IO和事件循环  # 我的Node.js学习之路(三)--node.js作用、回调、同步和异步代码 以及事件循环  # 详解node.js 事件循环  # 回调  # 都是  # 绑定  # 单线程  # 应用程序  # 第一个  # 多个  # 如有  # 我们可以  # 希望能  # 作为一个  # 谢谢大家  # events  # nbsp  # Node  # pre  # strong  # EventEmitter  # ul  # API 


相关文章: 浅析上传头像示例及其注意事项  昆明高端网站制作公司,昆明公租房申请网上登录入口?  如何配置支付宝与微信支付功能?  如何配置WinSCP新建站点的密钥验证步骤?  如何在IIS中配置站点IP、端口及主机头?  如何用已有域名快速搭建网站?  招贴海报怎么做,什么是海报招贴?  C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)  ppt制作免费网站有哪些,ppt模板免费下载网站?  PHP正则匹配日期和时间(时间戳转换)的实例代码  如何快速搭建FTP站点实现文件共享?  如何生成腾讯云建站专用兑换码?  网站制作外包价格怎么算,招聘网站上写的“外包”是什么意思?  公司网站制作费用多少,为公司建立一个网站需要哪些费用?  制作网站的软件下载免费,今日头条开宝箱老是需要下载怎么回事?  网站制作公司排行榜,四大门户网站排名?  rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted  网站企业制作流程,用什么语言做企业网站比较好?  西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?  如何用西部建站助手快速创建专业网站?  三星网站视频制作教程下载,三星w23网页如何全屏?  高防服务器如何保障网站安全无虞?  建站主机选购指南:核心配置优化与品牌推荐方案  单页制作网站有哪些,朋友给我发了一个单页网站,我应该怎么修改才能把他变成自己的呢,请求高手指点迷津?  网站设计制作企业有哪些,抖音官网主页怎么设置?  建站之星导航配置指南:自助建站与SEO优化全解析  威客平台建站流程解析:高效搭建教程与设计优化方案  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  高性能网站服务器部署指南:稳定运行与安全配置优化方案  宝塔Windows建站如何避免显示默认IIS页面?  测试制作网站有哪些,测试性取向的权威测试或者网站?  大同网页,大同瑞慈医院官网?  深圳防火门网站制作公司,深圳中天明防火门怎么编码?  Android使用GridView实现日历的简单功能  建站之星如何一键生成手机站?  云南网站制作公司有哪些,云南最好的招聘网站是哪个?  nginx修改上传文件大小限制的方法  建站之星代理如何获取技术支持?  整人网站在线制作软件,整蛊网站退不出去必须要打我是白痴才能出去?  网站制作和推广的区别,想自己建立一个网站做推广,有什么快捷方法马上做好一个网站?  高防服务器租用指南:配置选择与快速部署攻略  网站制作说明怎么写,简述网页设计的流程并说明原因?  如何在香港服务器上快速搭建免备案网站?  香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南  网站制作企业,网站的banner和导航栏是指什么?  如何通过多用户协作模板快速搭建高效企业网站?  如何在Golang中实现微服务服务拆分_Golang微服务拆分与接口管理方法  ,制作一个手机app网站要多少钱?  c# 服务器GC和工作站GC的区别和设置  宝塔面板创建网站无法访问?如何快速排查修复? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。