Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何防止end消息关闭Nodejs流?

如何防止end消息关闭Nodejs流?
EN

Stack Overflow用户
提问于 2018-01-04 19:21:41
回答 2查看 839关注 0票数 3

在Node服务器中,我有一系列的流通过管道连接在一起。举个例子:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
streamA.pipe(streamB).pipe(streamC)

最终streamA完成,在这一点上,我想将下行切换到另一个源:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
streamD.pipe(streamB).pipe(streamC)

但是当我尝试这样做时,我得到了以下错误:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Error: write after end

如何防止streamA关闭我的下行数据流?或者,如何重新打开我的下行数据流以将其切换到streamD?

另外,我的用例要求我一直等到streamA结束。我不能过早地切换数据流。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-01-24 21:21:47

一直在谷歌上搜索同样的东西,你可以添加

streamA.pipe(streamB, {end: false}).pipe(streamC, {end: false})

票数 10
EN

Stack Overflow用户

发布于 2018-01-04 19:34:08

在我的例子中,我发现如果我在收到‘unpipe()’事件时结束我的下游,那么上游将没有机会关闭我的下游,一切都是正常的。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
streamA.on('end', function() {
    downstreams.forEach(downstream => {
        streamA.unpipe(downstream);
    });
}

如果有更规范的解决方案,请随时张贴。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48102141

复制
相关文章
如何定时自动关闭消息框?
我们知道,在VBA中可以使用MsgBox方法来弹出消息框,然而需要单击其中的“确定”按钮来使程序继续运行或进行其他操作。如果想要自动关闭消息框,如何实现?
fanjy
2023/10/23
5040
如何定时自动关闭消息框?
NodeJS 防止xss攻击 🎨
持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第30天,点击查看活动详情
德育处主任
2022/09/09
1.6K0
NodeJS 防止xss攻击 🎨
Linux如何关闭交换分区,防止内存置换降低性能。
将/etc/fstab 文件中包含swap的行注释掉 sed -i '/swap/s/^/#/' /etc/fstab swapoff -a 单用户可以打开的最大文件数量,可以设置为官方推荐的65536或更大些 echo "* - nofile 655360" >> /etc/security/limits.conf 单用户线程数调大 echo "* - nproc 131072" >> /etc/security/limits.conf 单进程可以使用的最大map内存区域数量 echo "vm.max_m
justmine
2020/03/30
3.7K0
nodejs中如何使用流数据读写文件
在nodejs中,可以使用fs模块的readFile方法、readFileSync方法、read方法和readSync方法读取一个文件的内容,还可以使用fs模块的writeFile方法、writeFileSync方法、write方法和writeSync方法向一个文件中写入内容。
前端_AWhile
2019/08/29
6.2K0
try-with-resource如何优雅的关闭io流[通俗易懂]
JAVA的一大特性就是JVM会对内部资源实现自动回收,即自动GC,给开发者带来了极大的便利。但是JVM对外部资源的引用却无法自动回收,例如数据库连接,网络连接以及输入输出IO流等,这些连接就需要我们手动去关闭,不然会导致外部资源泄露,连接池溢出以及文件被异常占用等。
全栈程序员站长
2022/11/07
6680
彻底关闭 WordPress Trackback,防止垃圾评论
Trackback 是 Web 2.0 发展初期的产物,最初是方便展示博客文章之间的引用情况。
Denis
2023/04/13
4560
彻底关闭 WordPress Trackback,防止垃圾评论
NodeJs在linux下关闭监听端口
在NodeJs运行的时候,我们往往会遇到一个问题:“端口被占用”,这个问题,我们的处理办法有哪些呢? 这里我只介绍一下linux下的方法: 1、我们可以通过修改代码里面的监听端口,然后重新运行,这样会导致一个问题是,服务器的监听端口越来越多,会给服务器带来些许的压力,这种方法也是不可取的,没运行一次监听一个新端口,当然不是我们所希望的啦; 2、使用nodemon运行js,例如nodeme index.js; npm install nodemon -g //install it 文档
蛋未明
2018/06/07
4K0
Nodejs 中基于 Stream 的多文件合并实现
本文先从一个 Stream 的基本示例开始,有个初步认识,中间会讲在 Stream 中什么时候会出现内存泄漏,及如何避免最后基于 Nodejs 中的 Stream 实现一个多文件合并为一个文件的例子。
五月君
2020/05/19
2.6K0
NodeJs的Stream(流)应用
createReadStream读取流 const fs = require('fs'); var readStream = fs.createReadStream('./data.text') var count = 0 var str = ''; // 监听正在读取 readStream.on('data', (data) => { str += data; count++; }) // 监听读取结束 readStream.on('end', () => { console.lo
明知山
2020/09/03
5970
nodejs可读流源码分析
可读流是对数据消费的抽象,nodejs中可读流有两种工作模式:流式和暂停式,流式就是有数据的时候就会触发回调,并且把数据传给回调,暂停式就是需要用户自己手动执行读取的操作。我们通过源码去了解一下可读流实现的一些逻辑。因为实现的代码比较多,逻辑也比较绕,本文只分析一些主要的逻辑,有兴趣的可以参考文档或者自行深入看源码了解细节。我们先看一下ReadableState,这个对象是表示可读流的一些状态和属性的。
theanarkh
2020/07/22
8780
nodejs流基类源码分析
流的基类只提供了一个函数就是pipe。用于实现管道化。这个方法代码比较多,分开说。
theanarkh
2020/07/22
6180
nodejs消息推送一例
传感器发送到服务器: function httppost(url, data, fn) { data = data || {}; var content =JSON.stringify(data); var parse_u = require('url').parse(url, true); var isHttp = parse_u.protocol == 'http:'; var options = { 'host': parse_u.ho
周星星9527
2021/07/20
3990
VBA: 自动定时关闭消息框
文章背景: 在VBA中创建弹窗对话框,可以使用MsgBox函数;但是该函数得到的消息框,必须手动关闭它。下面介绍一个未公开的Windows API函数,可以使用该函数得到一个自动定时关闭的消息框。
Exploring
2022/12/18
3K0
Nodejs+Redis实现简易消息队列
消息队列是存储数据的一个中间件,可以理解为一个容器。生产者生产消息投递 到队列中,消费者可以拉取消息进行消费,如果消费者目前没有消费的打算,则消息队列会保留消息,直到消费者有消费的打算。
coder2028
2022/10/17
7260
流的两种关闭方式
?
用户2965768
2019/03/15
5340
流的两种关闭方式
NodeJS+Express中集成Flash消息
到这里,我们的集成工作已经完成,就可以在router中使用类似 req.flash('flash_success_message', '文章添加成功!'); 传递flash消息了! 下面教大家如何完整定义一套flash message前后端解决方案。
飞奔去旅行
2019/06/13
1.3K0
Nodejs 发送 TCP 消息的正确姿势
最近使用 NODE-RED 跟 TCP 打交道。NODE-RED 里内建了一个节点叫“tcp-out”,看文档呢使用这个节点可以很方便的把 payload 用 TCP 协议发送出去,但是事实上事情没有这么简单。其实当我第一次看到这个节点用法的时候我就觉得会有问题,果不其然。既然节点有问题,那么就干脆写代码吧,反正 NODE-RED 支持自定义 javascript function 。于是就花了点时间研究了下用 Nodejs 来发送 TCP 消息。
MJ.Zhou
2023/03/10
1.5K0
Nodejs 发送 TCP 消息的正确姿势
kail系统 修改电源设置 防止关闭显示器
点击左上角 进入搜索 输入‘电源管理器’,回车 在显示中,把下面几个控制条拖到最左边,就OK了
小黑同学
2020/08/17
9350
kail系统 修改电源设置 防止关闭显示器
在nodejs中创建child process
nodejs的main event loop是单线程的,nodejs本身也维护着Worker Pool用来处理一些耗时的操作,我们还可以通过使用nodejs提供的worker_threads来手动创建新的线程来执行自己的任务。
用户2323866
2021/06/22
3.3K0
Windows防止自动睡眠模式或关闭显示器
❝使应用程序能够通知系统它正在使用中,从而防止系统在应用程序运行时进入睡眠状态或关闭显示器。❞
Qt君
2020/02/24
1.2K0

相似问题

如何向Nodejs流发送end事件

153

可读流Nodejs不发出“end”事件。

10

如何防止hadoop流关闭?

14

如何防止Newtonsoft JsonSerializer关闭流?

25

如何防止nodejs控制台关闭

27
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文