创建和使用具有多个订阅者的流的最佳方法是什么?
它曾经是:
new StreamController.broadcast()
Run Code Online (Sandbox Code Playgroud)
但是那个构造函数在M4中消失了.
根据这个链接:
https://groups.google.com/a/dartlang.org/d/msg/misc/KJrKH5-bNkU/CjpIpEP_EpgJ
使用r21499,我们删除了StreamController.broadcast构造函数.
StreamController.broadcast流具有令人讨厌的属性,很容易导致错过事件和类似的难以调试的条件.我们最初为html库添加了这个类,但最终不需要它.通过删除此类,我们可以为Streams提供更清晰的合同.
我们仍然保留了asBroadcastStream方法.它的行为与StreamController.broadcast的行为略有不同.在大多数情况下,
asBroadcastStream
如果需要附加多个侦听器,可以尝试迁移到.
因此,创建一个新流,并调用asBroadcastStream()
它.
(但你可能也想留意这个问题:asBroadcastStream不能被多次调用)
归档时间: |
|
查看次数: |
260 次 |
最近记录: |