加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

dart – streamController.add()和streamController.sink.add()

发布时间:2020-12-14 14:52:04 所属栏目:百科 来源:网络整理
导读:我知道有两种方法可以将数据添加到流控制器,一种是通过使用接收器直接添加数据.我试图阅读Sink的文档,但我无法理解它的概念,如管道数据等. 解决方法 没有.这在内部做同样的事情. .sink属性的真正目的是将其作为其他对象的参数传递.如 : MyClass( sink: myCo
我知道有两种方法可以将数据添加到流控制器,一种是通过使用接收器直接添加数据.我试图阅读Sink的文档,但我无法理解它的概念,如管道数据等.

解决方法

没有.这在内部做同样的事情.

.sink属性的真正目的是将其作为其他对象的参数传递.如 :

MyClass(
  sink: myController.sink,)

这可以防止类访问他们无法访问的属性.

但StreamController实现了Sink,那有什么意义呢?

好吧.但是将StreamController转换为Sink与创建Sink不同.

例如,使用Sink的类可以很好地执行以下操作:

StreamSink sink = StreamController();
if (sink is StreamController) { // this is true
    // access StreamController custom methods
}

接收器字段用于防止这种情况发生.它转化为以下内容:

StreamSink sink = StreamController().sink;
if (sink is StreamController) { // false this time
   // never reached
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读