kotlin - 如何将制作人与 Actor 联系起来?

标签 kotlin actor kotlinx.coroutines

如何连接使用 produce 创建的生产者协程生成器,对于 Actor ,使用 actor 创建协程构建器?

基本上,我希望生产者的发送 channel 成为actor的接收 channel 。有没有简单的方法可以做到这一点?

我在文档中找不到任何允许我明确指定制作人或 Actor 使用的 channel 的内容。

最佳答案

假设以下定义:

val producer = produce<T> { ... }
val actor = actor<T> { ... }

您可以编写以下代码来启动辅助协程,将所有生成的消息发送给您的参与者:

launch { producer.toChannel(actor) }

如果您想等到复制作业完成,您只需在协程中使用 Producer.toChannel(actor) 即可。 toChannel 是一个终端操作,等待处理完成。

关于kotlin - 如何将制作人与 Actor 联系起来?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47783982/

相关文章:

android - 如何在 Android Compose 中找到两个 PaddingValue 的总和?

kotlin - 未能在事件结果上交付结果

android - 在没有 LifecycleObserver 的情况下使用 LiveData

java - 当使用 UUID 命名时,为 akka actor 定义调度程序

Scala 与 Rabbit MQ 的集成

kotlin - 将数据从回调推送到 Kotlin 协程的方法是什么

kotlin - 如何使用 kotlin 在字符串中插入分隔符

scala - 使用 Scala Actor 框架作为 fork-join 计算?

android - Kotlin 在后台线程上运行阻塞

Kotlin 异步与启动