位置: 编程技术 - 正文

Node.js中流(stream)的使用方法示例(node stream(流)有哪些?)

编辑:rootadmin

推荐整理分享Node.js中流(stream)的使用方法示例(node stream(流)有哪些?),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:node.js的流的主要作用,node.js stream,node.js的流的主要作用,node stream(流)有哪些?,node.js的流的作用,node.js的流的主要作用,node.js的流的主要作用,node.js的流的作用,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

本文主要给大家介绍了关于Node.js 流(stream)的使用方法,分享出来供大家参考学习,下面话不多说,来一起看看详细的介绍:

流是基于事件的API,用于管理和处理数据,而且有不错的效率.借助事件和非阻塞I/O库,流模块允许在其可用的时候动态处理,在其不需要的时候释放掉.

使用流的好处

举一个读取文件的例子:

使用fs.readFileSync同步读取一个文件,程序会被阻塞,所有的数据都会被读取到内存中.

换用fs.readFile读取文件,程序不会被阻塞,但是所有的数据依旧会被一次性全部被读取到内存中.

当处理大文件压缩,归档,媒体文件和巨大的日志文件的时候,内存使用就成了问题,在这种情况下,流的优势就体现出来了.

流被设计为异步的方式.相比将剩余的文件数据一次性读进内存,还是值得读取一个缓冲区,期望的操作将会被执行,而且结果会被写到输出流.

流的分类

stream.Readable---用于在I/O上获取数据 stream.Writable---用于在输出的目标写入数据 stream.Duplex---一个可读可写的流,例如网络连接 stream.Transform---一个会以某种方式修改数据的双工流

创建一个可读流

Node.js中流(stream)的使用方法示例(node stream(流)有哪些?)

方法一

方法二

方法三

可读流的一些概念

可读流是 对提供数据的源头的抽象

可读流的实例

http responses,on the client http requests, on the server fs read stream zlib streams crypto streams TCP sockets child process stdout and stderr process.stdin

可读流的模式

可读流有两种工作模式:flowing和paused.

在flowing模式下,可读流自动从系统底层读取数据,并通过EventEmitter接口的事件尽快将数据提供给应用.

可读流在创建的时候都是处在paused模式.

可读流可以在两种模式下切换.

处于paused模式可读流,可以通过下面三种途径切换到flowing模式:

监听'data'事件. 调用stream.resume()方法. 调用stream.pipe()方法将数据发送到Writable

处于flowing模式可读流,可以通过下面两种途径切换到paused模式:

如果不存在管道目标,可以通过调用stream.pause()方法实现 如果存在管道目标,可以通过取消'data'事件监听,并调用stream.unpipe()方法移除所有管道来实现

可读流事件

可读流提供了以下事件:

'close'事件,事件将在流或底层资源关闭后触发,但不是所有的流都会触发该事件. 'data'事件,data事件将会在流将数据传递给消费者时触发.当流转换到flowing模式时会触发该事件. 'end'事件,end事件只有在数据被完全消费后才会触发. 'error'事件,error事件会在底层系统内部出错从而不能产生数据,或当流的实现试图传递错误数据时发生. 'readble'事件,readable事件将在流中有数据可供读取时触发.

总结

标签: node stream(流)有哪些?

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

上一篇:详解基于Node.js的微信JS-SDK后端接口实现代码(node.js的理解)

下一篇:node.js express中app.param的用法详解

  • 小微企业免征增值税申报表怎样填
  • 油补是福利费还是工资
  • 金蝶k3现金流量明细查询
  • 有进项发票还用交税
  • 境内公司取得境外收入
  • 城市公交企业购置的公共汽车
  • 关联交易所得税规定
  • 缴纳文化事业建设费的范围
  • 企业分立特殊性税务处理涉税
  • 无形资产的累计摊销是什么意思
  • 服务行业主营业务成本包括哪些内容
  • 进项税认证怎么做分录
  • 个体户销售蔬菜免增值税吗
  • 小规模纳税人收入超过500万怎么办
  • 偷税罪立案标准最新
  • 纳税人提供植物油的税率
  • 学校的房子归哪里管
  • 社保基数每个月可以调整一次吗
  • 增值税发票二联折叠票样式
  • 技术先进型企业认定
  • 注销税务登记后多久注销工商登记
  • 咨询费如何缴纳个税
  • 资本公积的借方和贷方各表示什么
  • macos catalina安装很慢
  • 新成立公司开票能开多少个点的发票
  • linux sed 行尾
  • 台式机装win10哪个版本好
  • php echo \n
  • win11中文安装包
  • 购买性支出和转移性支出的本质区别
  • php图形用户界面
  • 资产负债表包括什么科目
  • 前端的基础知识
  • yolov5tiny
  • php内存缓存功能怎么用
  • python读取全部文件
  • js 数组remove
  • 法律服务费属于什么服务
  • sql server创建数据表的完整语法
  • 垃圾袋发票税收分类编码
  • 固定资产折旧方法一经确定不得随意变更
  • 工资单应该盖什么章
  • 增值税税务检查
  • 存货报废进项税转出吗
  • 上一年度所得税忘记计提了怎么办
  • 企业收到房租发票怎么做账
  • 独资合伙公司
  • 增值税专用发票丢了怎么补救
  • 商业会计怎么算主营业务成本
  • 递延所得税资产和所得税费用的关系
  • mysql源码编译
  • jquery常用的事件绑定函数有哪些
  • 如何关闭windows程序
  • 在64位的Ubuntu系统上安装32位的WPS的方法
  • win7的查看方式
  • avgorange是什么文件
  • gpedit.msc无法打开
  • ubuntu必备软件10款
  • explorer.exe进程100%
  • 如何进入xp系统
  • win8自带截图
  • win7点关机关不了
  • win10升级后小娜不能用
  • win80xc0000001怎么修复
  • javascript+css3开发打气球小游戏完整代码
  • jquery监听页面刷新
  • vue cli3 webpack配置
  • javascript总结笔记
  • jquery使用css
  • JavaScript事件 "事件对象"的注意要点
  • js需要学到什么程度
  • 如何用android
  • 浅析是什么意思
  • 纳税人防伪税控设备未抄报怎么操作
  • 广东税务局账号登录
  • 税源管理科是干什么的工作
  • 税务报道是干什么
  • 小规模六税两费减免分录
  • 官方客服热线人工台电话
  • 两会热点有哪些呀?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设