1

如果这个问题被认为不适合 SO,我深表歉意,但我想知道你们中是否有人知道asStream通过then. 您是否期望以下两个操作之间存在一般性能差异?

操作 1

expensiveOperation().asStream().listen((res) {
  doSomething(res);
});

操作 2

expensiveOperation().then((res) {
  doSomething(res);
});
4

1 回答 1

1

asStream只需分配一个包装对象并将未来的结果转发给流。总而言之,您可能不会注意到差异。

如果您碰巧遇到实际测量减速的情况,请在http://dartbug.com上提交错误。仍然有办法让包装更便宜。

于 2014-04-11T05:45:18.903 回答