我正在实现一个可写流,但我不知道如何在它暂停后取消暂停。
文档说要暂停可写流应该返回 false
,然后取消暂停它,应该发出 drain
事件。
https://nodejs.org/api/stream.html#stream_writable_write_chunk_encoding_callback
这正是我认为我所做的,但它不会取消暂停流,而是在输入中有新数据时关闭管道。
特别是:
this.emit('drain');
_write()
不再被调用,管道就存在。这是一个例子: https://replit.com/@OnkelTem/ExtrovertedSlushyOutcomes#index.js
(要运行它,请切换到“Shell”选项卡并发出:node index.js
)
如您所见,它在发出 'drain' 后停止。
有什么想法吗?