You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从客户端关闭Vertx ReadStream?

ReadStream 取消订阅的实现方式

Vert.x 的 ReadStream 没有对应 WriteStream.end() 的直接方法,但可以通过以下步骤实现从不终止的流中取消订阅:

  • 取消数据处理逻辑:调用 readStream.handler(null),后续流产生的数据将不再触发你的处理代码
  • 移除异常监听:调用 readStream.exceptionHandler(null),避免后续异常继续通知客户端
  • 暂停流读取(可选):如果需要彻底停止流的读取操作,可调用 readStream.pause(),仅置空处理程序通常已满足取消订阅需求

示例代码:

// 假设已初始化 ReadStream 实例 readStream
// 执行取消订阅操作
readStream.handler(null);
readStream.exceptionHandler(null);
readStream.pause(); // 根据业务场景选择是否添加

针对特定类型的 ReadStream(如 WebSocket、HttpServerRequest),还可调用对应实例的关闭方法(如 webSocket.close())来彻底终止连接,但通用场景下置空处理程序是最直接的取消订阅方式。

内容的提问来源于stack exchange,提问作者Vin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 05:49:53