在哪些情况下您不想或不应该在 Kotlin 中使用协程?

Fer*_* B. 6 coroutine kotlin kotlin-coroutines

我读过很多使用协程的优点,但我没有发现为什么不应该或不能使用它们。

顺便问一下,为什么不使用所有方法作为挂起方法呢?

我在这里很难理解一些概念,所以在我的问题中我假装提出相反的情况(为什么不使用它),这样我可以通过对比更好地理解。

SVK*_*SVK 2

请参阅我对您的问题的回答:

  1. 但我没有发现为什么你不应该或不能使用它们。
    答案: A. 您不应该将它们用于任何前台任务。
    b. 您不应该将它们用于任何简单/真正的快速操作。
    C。您不应该将它们用于任何类型的初始化。

  2. 顺便问一下,为什么不使用所有方法作为挂起方法呢?
    答案
    a) 这将被视为代码异味。这样做是不好的做法。
    b) 如果您将所有函数标记为挂起,那么每当您想要调用挂起函数时,您都必须创建一个协程作用域来运行它。
    c) 挂起功能的测试很困难。它需要RunBlockingTestAndroidX 的一些额外设置。