Dart 中的 Stream
是一个异步数据流,可以在其上订阅并异步接收数据。
使用 Stream
的一种常见方式是在一个类中创建 Stream
,并在另一个类中订阅它。例如,一个应用可能会创建一个 Stream
,用于传递来自服务器的数据,然后在其他组件中订阅该 Stream
,以在收到数据时更新 UI。
要创建 Stream
,可以使用 StreamController
类。StreamController
有两个子类:StreamController
和 BroadcastStreamController
。前者允许单个订阅者,而后者允许多个订阅者。
要订阅 Stream
,可以使用 Stream
类的 listen
方法。listen
方法接受一个回调函数,该回调函数在接收到 Stream
中的数据时调用。
还有许多其他有用的 Stream
方法,例如 map
,where
和 expand
,可用于对数据流进行转换和过滤。