Kotlinx.coroutines: MPP Channel

Created on 9 Jan 2018  路  7Comments  路  Source: Kotlin/kotlinx.coroutines

Hi !

Thanks a lot for providing a first great MPP support with #33

Is it possible to add a MPP Channel (with common & JS support) ? And why not a kotlinx-coroutines-reactive MPP version too ?

enhancement

Most helpful comment

Porting channels/producers and actors is in the plans. Reactive MPP version does not make a lot of sense, since reactive libraries are all Java-specific. There are no true Kotlin-MPP reactive libraries out there yet. However, we might separately develop one based on the coroutines.

All 7 comments

Porting channels/producers and actors is in the plans. Reactive MPP version does not make a lot of sense, since reactive libraries are all Java-specific. There are no true Kotlin-MPP reactive libraries out there yet. However, we might separately develop one based on the coroutines.

Nice thanks Elizarov, these plans for channels/producers and actors will be really appreciated !

I am currently writing a MPP reactive library using kotlinx-coroutines-reactive, based on the publish function that returns a reactive Publisher. In my opinion kotlinx-coroutines-reactive could be turned to a MPP project as it only depends on a few interfaces from reactive-streams.

Rxjava with kotlinx-coroutines-rx1, kotlinx-coroutines-rx2 and Reactor with kotlinx-coroutines-reactor are JVM only, I agree with you !

Reactive streams could be ported to Kotlin, but this is actually a bad idea. We can do much better with Kotlin. See this discussion: https://github.com/reactor/reactor-core/issues/979

Thanks a lot for this link, great performance improvments to come for my current reactive library project !

Not having channel in the common library is something I'm finding pretty painful right now.

Not having runBlocking in the common module is also painful.

@ScottPierce, the reason why runBlocking is missing is explained in #195. (Although I agree it is a bit painful)

Was this page helpful?
0 / 5 - 0 ratings