位置: 编程技术 - 正文

详解nodejs异步I/O和事件循环(nodejs 异步io)

编辑:rootadmin

推荐整理分享详解nodejs异步I/O和事件循环(nodejs 异步io),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:node 异步io,node 异步,node中异步编程模式使用什么捕获异常,nodejs 异步,nodejs异步编程及原理,nodejs 异步io底层原理,nodejs 异步,nodejs 异步,内容如对您有帮助,希望把文章链接给更多的朋友!

事件驱动模型

详解nodejs异步I/O和事件循环(nodejs 异步io)

现在我们来看看nodejs中的事件驱动和异步I/O是如何实现的.

nodejs是单线程(single thread)运行的,通过一个事件循环(event-loop)来循环取出消息队列(event-queue)中的消息进行处理,处理过程基本上就是去调用该消息对应的回调函数。消息队列就是当一个事件状态发生变化时,就将一个消息压入队列中。

nodejs的时间驱动模型一般要注意下面几个点:

因为是单线程的,所以当顺序执行js文件中的代码的时候,事件循环是被暂停的。 当js文件执行完以后,事件循环开始运行,并从消息队列中取出消息,开始执行回调函数 因为是单线程的,所以当回调函数被执行的时候,事件循环是被暂停的 当涉及到I/O操作的时候,nodejs会开一个独立的线程来进行异步I/O操作,操作结束以后将消息压入消息队列。

下面我们从一个简单的js文件入手,来看看 nodejs是如何执行的。

同步执行debug("begin") 异步调用fs.readFile(),此时会开一个新的线程去进行异步I/O操作 异步调用setTimeout(),马上将超时信息压入到消息队列中 同步调用debug("end") 开启事件循环,弹出消息队列中的信息(目前是超时信息) 然后执行信息对应的回调函数(事件循环又被暂停) 回调函数执行结束后,开始事件循环(目前消息队列中没有任何东西,文件还没读完) 异步I/O读取文件完毕,将消息压入消息队列(消息中含有文件内容或者是出错信息) 事件循环取得消息,执行回调 程序退出。

标签: nodejs 异步io

本文链接地址:https://www.jiuchutong.com/biancheng/380841.html 转载请保留说明!

上一篇:浅析 NodeJs 的几种文件路径(nodejs实战教程)

下一篇:详解Node.js 命令行程序开发教程(node.js介绍)

  • 资产的计税基础大于账面价值会形成可抵扣的暂时性差异
  • 企业持股分红
  • 债权投资借贷方向是什么一年内的
  • 教育附加费税率怎么算
  • 未达起征点的增值税怎么算
  • 外资企业采购流程
  • 国资委无偿划拨资产不上税吗
  • 购销印花税会计分录
  • 现金支付用什么科目
  • 出口货物如果没收怎么办
  • 房地产公司缴纳契税的会计分录
  • 服务业发票税率是多少
  • 企业完税凭证入账后怎么办理退税?
  • 超市预付卡开票内容
  • 什么称为非正数
  • 未办预售证,企业取得这笔收入要缴增值税吗?
  • 本期准予扣除税额是什么
  • 税务领取发票后怎么操作
  • 发票是不是一定要三签才能开
  • 年数总和法折旧公式
  • 住宿费进哪个科目
  • 委托加工应税消费品收回后直接销售
  • 单位外汇账户可分为
  • 远期外汇合约套期会计分录
  • 印花税多计提如何冲回
  • 一直零申报会怎么样
  • 公司开年会的费用谁承担
  • php自定义变量
  • 查看chrome浏览器内核版本
  • 股权收购账务处理方法
  • 同一控制下企业合并会计准则
  • 阿拉斯给加拉普
  • vue项目部署上线 需要做哪些准备
  • uni-app实战教程
  • html span标签作用
  • 用现金报销差旅费及增值税怎么做账
  • 为什么没缴税
  • 公司注销实收资本退回需要交税吗
  • 持有至到期投资属于流动资产吗
  • mysql数据库最新版
  • 经济利益的总流入
  • 其他支出怎么做账
  • 培训学校收入如何确认
  • 所得税申报报表
  • 资产组可收回金额包含完全商誉吗
  • 报销管理规定
  • 汽车折旧年限及残值率是多少
  • 业务招待费可以计入销售费用吗
  • 工业投资范围是什么
  • win8怎么锁定屏幕
  • 微软每月补丁更新一般于什么时间发布
  • Win10 RedStone 2预览版14936快速版开始推送
  • linux删除u盘记录
  • macbookair登陆
  • centos 常用命令教程
  • fsma32.exe进程是什么文件 fsma32是什么进程
  • Windows RT 8.1 Update 3九月发布 届时将加入改进版锁屏
  • 禁用远程桌面服务登录
  • win10专业版装不上m1136驱动
  • unity自动攻击
  • cocos creator rpg
  • js中颜色对应代码
  • jquery插件怎么用到自己的网站
  • 你知道python不
  • jquery中点击事件点击没动静
  • node.js详解
  • 安卓调用系统相机
  • unity3d游戏开发教程
  • 个人所得税怎么换手机号绑定
  • 江西发票查询真伪查询
  • 河南省电子票据查询平台
  • 办税人员怎么绑定电子税务系统
  • 社保诚信申报怎么取消
  • 如何在国税网查看社保人员信息
  • 贵州税务发票流向查询
  • 如何理性看待出轨
  • 建立高效的法治实施体系,需要着力解决四个问题
  • 关于公司纳税
  • 云南省国家税务局APP
  • 国家土地征收管理办法
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设