位置: 编程技术 - 正文

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

  • 汇算清缴要调整会计分录吗
  • 美容美发属于什么行业
  • 记账凭证填错了怎么改
  • 综合收益什么时候结算
  • 自产产品用于广告要交消费税吗
  • 怎么从其他公司挖人
  • 滴滴电子发票可以看到行程吗
  • 计提的工会经费怎么做账
  • 建筑业简易征收差额征税的计算案例
  • 开出银行汇票支付手续费
  • 过路费普通发票可以抵税吗
  • 去年销售怎么算
  • 公司提供职工午餐违法吗
  • 企业所得税必须要季度缴纳吗
  • 装修公司在装修完后增加费用
  • 采购合同中含税金额
  • 实收资本印花税最新规定
  • 外管证交税需要带什么材料
  • 固定资产无形资产折旧时间起始
  • 摊销合同取得成本分录
  • 建筑服务工程款会计分录
  • 产权交易费用
  • 给出含税货款会计分录
  • 税收筹划有哪些特点?
  • 增值税电子发票公共服务平台
  • 加工费计入成本怎么计算所得税
  • 苹果 macOS 13.3 开发者预览版 Beta 2 发布
  • 冲往年管理费用的账务处理是否涉及所得税
  • 逾期未收回包装物押金会计分录
  • 房地产开发企业涉及哪些税
  • 盈余积累转增股本什么意思
  • 企业应收票据贴现 哪个部门负责
  • 车辆维修费怎么做分录
  • php培训得花多少钱
  • 坏账损失属于或有事项吗
  • 建筑企业结转成本的依据是什么
  • php取二维数组的一组内容
  • linuxulator
  • html+css+js网页设计期末作业付源码
  • “oracle”
  • tomcat的安装配置
  • php隐藏图片地址
  • 持续ping ip的命令
  • 企业资产损失税前扣除管理办法最新
  • vant表单验证并提交表单
  • 文化事业建设费税收优惠政策2023
  • 同业代付业务会计核算
  • 存货盘亏原因不明会计分录
  • 专项应付款如何核算
  • python中exec执行如何获取返回值
  • 交易性金融资产属于什么科目
  • 有留抵税额可以注销吗
  • 公司注销单位公积金账户余额怎么处理
  • 偷税行为如何处理
  • 注册公司时的注册资金认缴是什么意思
  • 折扣销售方式销售货物只要发票中有注明的折扣额
  • 水利建设税怎么做账
  • 国家资产负债表
  • 快递行业的会计岗位
  • 结存材料实际成本计算公式
  • 酒店会计科目表
  • windowsxp文件
  • vcspawn.exe
  • ubuntu下安装win10
  • centos 常用命令教程
  • linux快捷命令
  • xp电脑小游戏
  • linux学啥
  • win8和win10怎么共享文件
  • Android游戏开发案例教程小小弹球
  • js动态改变div内容
  • 使用node
  • android studio快捷键补全
  • 搭建maven开发环境
  • jq cookie
  • fragment
  • 税务安装步骤
  • 外省车险保单,有何不利的事
  • uk怎么添加发票
  • 城市维护建设税怎么算
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设