Module java.base

Interface Flow.Subscriber<T>

类型参数:
T - 订阅的项目类型
所有已知的子接口:
Flow.Processor<T,R>, HttpResponse.BodySubscriber<T>
封装类:
Flow

public static interface Flow.Subscriber<T>
消息接收器。此接口中的方法按照严格的顺序为每个Flow.Subscription调用。
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    当已知不会再发生任何额外的Subscriber方法调用时调用的方法,对于尚未由错误终止的订阅,之后不会有其他Subscriber方法由订阅调用。
    void
    onError(Throwable throwable)
    当发布者或订阅遇到无法恢复的错误时调用的方法,之后不会有其他Subscriber方法由订阅调用。
    void
    onNext(T item)
    使用订阅的下一个项目调用的方法。
    void
    在为给定的订阅调用任何其他Subscriber方法之前调用的方法。
  • Method Details

    • onSubscribe

      void onSubscribe(Flow.Subscription subscription)
      在为给定的订阅调用任何其他Subscriber方法之前调用的方法。如果此方法引发异常,则不保证结果行为,但可能导致订阅未建立或被取消。

      通常,此方法的实现会调用 subscription.request以启用接收项目。

      参数:
      subscription - 新的订阅
    • onNext

      void onNext(T item)
      使用订阅的下一个项目调用的方法。如果此方法引发异常,则不保证结果行为,但可能导致订阅被取消。
      参数:
      item - 项目
    • onError

      void onError(Throwable throwable)
      当发布者或订阅遇到无法恢复的错误时调用的方法,之后不会有其他Subscriber方法由订阅调用。如果此方法本身引发异常,则结果行为未定义。
      参数:
      throwable - 异常
    • onComplete

      void onComplete()
      当已知不会再发生任何额外的Subscriber方法调用时调用的方法,对于尚未由错误终止的订阅,之后不会有其他Subscriber方法由订阅调用。如果此方法引发异常,则结果行为未定义。