gpt4 book ai didi

kotlin - Arrow-Kt Fx 与 Kotlin 协程

转载 作者:行者123 更新时间:2023-12-04 19:31:34 29 4
gpt4 key购买 nike

我正在努力学习 Arrow-Kt因为我对 Functional Programming in Kotlin 感到好奇.

有人能解释一下为什么需要创建另一个功能与 Kotlin Coroutines 几乎相似的结构吗? ?还是我对此的理解有误?

这两者是如何结合在一起的?

最佳答案

Arrow fx uses coroutines when dealing with IO, doesn't replace them. Similar to how Room has extensions that allow to use Flow.



这是错误的,Arrow Fx 为 Kotlin 的挂起系统构建了一个纯函数式运行时库。就像 KotlinX Coroutines 为 Kotlin 的库构建运行时库一样。

因此,这两个库都为 Kotlin 的挂起系统提供了一个实现,并且可以根据您的需要或用例互换或独立使用。

Arrow Fx 为 Kotlin 的挂起系统提供了一个纯函数式惰性运行时,带有副作用跟踪和 monad 理解(如 Pablisco 所示)。

它包含一个 IO类型,相当于 suspend () -> A并有许多强大的并发原语,如 Semaphore , Queue , Ref , Promise , 等等。
它们都保证资源安全,同时提供强大的并发和并行组合器和自动取消支持。
(在下一个版本中,我们还将支持 suspend () -> 任何一种)

与 KotlinX 协程相反,它提供了 Kotlin 挂起系统的急切实现,具有协作取消支持和冷流实现。

关于kotlin - Arrow-Kt Fx 与 Kotlin 协程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60200971/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com