位置: 编程技术 - 正文

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的用法详解

  • 塑料制品开票税率
  • 资产损失税前扣除管理办法
  • 公司销户本金转到哪里
  • 没有发票的福利有哪些
  • 本期缴纳前期应纳税额
  • 土地使用权的账面价值计入在建工程
  • 房屋评估价格是否含增值税
  • 减免货款需要进项税额转出吗
  • 异地预缴企业所得税几个点
  • 企业所得税为什么那么高
  • 贷款利息收入要减去支付利息支出吗
  • 一般纳税人能开3个点的专票吗
  • 糖类计算公式
  • 国家动漫企业认定优惠政策
  • 质押贷款属于什么贷款
  • 分公司注销未分配利润转给总部,总部如何做账
  • 环境工程开票多少税率
  • 可以做投标保证金的有银行汇票银行保函
  • 上期认证的发票本期能抵扣吗
  • 营改增贷款服务包括哪些
  • 预提差率费怎么记账
  • 业务招待费如何进行纳税调整
  • 不确定金额的应收账款
  • 计提坏账的应收账款收回
  • WIN10显示缩略图
  • 企业生产过程中的一个安全问题必须
  • 自用房地产转换为采用公允价值
  • php基于反射机制实验报告
  • 64位windows系统下安装Memcache缓存
  • 网速变慢了
  • 车间报销办公用品费
  • 盈余公积科目是什么科目
  • 最大交易笔数什么意思
  • 工程项目成本预算表
  • 育空领地
  • php获取get
  • 最近爆火的抖音神曲
  • nginx安装配置视频
  • 毕业设计-基于组态软件的流量比值过程控制系统设计
  • php web socket
  • wordpress mobile themes
  • calc下载
  • 其他应收账款怎么做预算会计分录
  • 技术服务费计入成本会计分录
  • 兼职劳务报酬如何入账
  • SQL Server 跨库同步数据
  • 公司用车租赁
  • 小规模纳税人减按1%政策
  • 企业所得税退税怎么操作流程
  • 营业外收入在汇算申报表与一般收入表不一致
  • 工程物资主要包括建筑材料
  • 出口退税申报分录怎么写
  • 高铁行程信息提示可以乘车吗
  • 免征的增值税账务处理
  • 银行扣的账户管理费属于什么科目
  • 工会经费交纳
  • 员工福利费怎么做账
  • 会计备注一般写什么
  • MSSQL 2005/2008 日志压缩清理方法小结
  • linux中df命令详解
  • 如何使用升级助力器
  • 组策略配置锁屏
  • centos 安装方法
  • 低分辨率调高分辨率会模糊吗
  • linux终端怎么用
  • cocoscreator lua
  • js限制数组长度
  • jquery排序上升和排序下降
  • javascript教程完整版
  • My Magic Android Tour —— 处女作
  • c++ 编程
  • linux如何配置
  • 江苏省无犯罪证明
  • 电子税务局下载app苹果版
  • 电话费的税费计入什么科目
  • 土地增值税按什么价格
  • 收到免税的苗木发票怎么做账
  • 个人医保缴费证明怎么打印
  • 个人所得税法实施条例2011
  • 古代税收和现代税收
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设