我对协程还是个新手,所以请耐心听我说。我有以下函数:
suspend fun getPortfolios(): Flow<Portfolio> = // ...
它工作得很好,使用r2dbc调用从数据库返回一个流。然而,我希望能够立即对完整的结果进行操作。这个特定的用例与在单元测试中执行Assert有关,但我相信还有其他用例涉及。
我不想让代码必须是“同步的”,我只想在另一个调用上面那个的suspend函数中一次获得所有将由Flow返回的值。
我看到上面有一个collect()
函数,但它返回一个Unit
,这对我来说很奇怪。接下来我可以尝试什么?
1条答案
按热度按时间nzk0hqpo1#
我留下这篇文章是为了帮助其他想学习心流的人,但答案再简单不过了: