StreamSubscription<T>抽象 接口

对来自 Stream 事件的订阅。

当你使用 Stream.listen 监听 Stream 时,会返回一个 StreamSubscription 对象。

订阅为监听器提供事件,并保留处理事件的回调函数。订阅还可以用来取消事件订阅,或者暂时暂停从流中发送事件。

示例

final stream = Stream.periodic(const Duration(seconds: 1), (i) => i * i)
    .take(10);

final subscription = stream.listen(print); // A StreamSubscription<int>.

要暂停订阅,请使用 pause

// Do some work.
subscription.pause();
print(subscription.isPaused); // true

暂停后恢复,请使用 resume

// Do some work.
subscription.resume();
print(subscription.isPaused); // false

要取消订阅,请使用 cancel

// Do some work.
subscription.cancel();

属性

hashCode int
此对象的哈希码。
无设置器继承
isPaused bool
指示 StreamSubscription 是否当前已暂停。
无设置器
runtimeType Type
对象运行时类型的表示。
无设置器继承

方法

asFuture<E>([E? futureValue]) Future<E>
返回一个处理 onDoneonError 回调的未来。
cancel() Future<void>
取消此订阅。
noSuchMethod(Invocation invocation) → dynamic
当访问不存在的方法或属性时被调用。
继承
onData(void handleData(T data)?) → void
替换此订阅的数据事件处理程序。
onDone(void handleDone()?) → void
替换此订阅的完成事件处理程序。
onError(Function? handleError) → void
替换此订阅的错误事件处理器。
pause([Future<void>? resumeSignal]) → void
请求流暂停事件,直到进一步通知。
resume() → void
暂停后恢复。
toString() String
此对象字符串表示形式。
继承

操作符

operator ==(Object other) bool
等于操作符。
继承