如何使用stream.asyncMap,但并行调用所有映射函数

时间:2019-04-18 09:03:47

标签: dart stream

我有一个ID列表,想要从我的API中为每个ID提取对象,然后将它们作为Stream返回。这是我的代码:

  CONSTRAINT CheckSensorStationNotNull CHECK (station_id is not null or sensor_id is not null)

这很好,但是我希望我的api调用(在Stream<User> getList(Iterable<String> ids) => Stream.fromIterable(ids).asyncMap(loadUser); 中)并行运行。现在,第一个loadUser()函数被调用,第二个函数仅在第一个函数完成后运行。

当然,我可以这样写:

loadUser()

但是除了有点令人费解之外,它也不会尽快释放每个用户。


所以基本上:我希望所有加载的对象以正确的顺序发出 ,但要尽快加载。

除了创建为我发出事件的异步闭包之外,还有一种简便的方法编写这种代码吗?

0 个答案:

没有答案