如何使用Kotlin协程从延迟的未来创建可观察的

如何使用Kotlin协程从延迟的未来创建可观察的,kotlin,rx-java,observable,kotlinx.coroutines,Kotlin,Rx Java,Observable,Kotlinx.coroutines,我正在尝试使用期货和协同程序创建一个可观察的 以下是我尝试过的: private fun getHelloObservable(): Observable<String>{ val deferred = GlobalScope.async { "Hello" } return Observable.just(deferred.await()) } private fun gethellooobserv

我正在尝试使用期货和协同程序创建一个可观察的

以下是我尝试过的:

private fun getHelloObservable(): Observable<String>{
        val deferred = GlobalScope.async {
            "Hello"
        }

        return Observable.just(deferred.await())
    }
private fun gethellooobservable():可观察{
val deferred=GlobalScope.async{
“你好”
}
返回Observable.just(deferred.await())
}
但我得到了以下错误:

挂起函数“wait”应仅从协程或 另一个暂停功能


有办法做到这一点吗?

您可以使用
kotlinx-coroutines-rx2
连接到反应式世界:

rxSingle { deferred.await() }

从那里,只需调用
toObservable()
就可以很容易地得到一个
可观察的

听起来是个非常糟糕的主意。。。协同程序在这方面根本帮不上你的忙,它们的目的是从你的代码中消除可观察的和未来的。