美文网首页Kotlin
Kotlin协程打印日志查看当前的线程和协程

Kotlin协程打印日志查看当前的线程和协程

作者: 漆先生 | 来源:发表于2022-02-22 19:51 被阅读0次

kotlin文档经常有用到Thread.currentThread().name,打印当前的线程和协程,但是自己测试只能看到线程信息。

fun log(msg: String) = println("[${Thread.currentThread().name}] $msg")

fun simple(): Flow<Int> = flow {
    log("Started simple flow")
    for (i in 1..3) {
        emit(i)
    }
}

fun main() = runBlocking {
    simple().collect { value -> log("Collected $value") }
}

输出:

[main] Started simple flow
[main] Collected 1
[main] Collected 2
[main] Collected 3

需要在as的VM options中配置-Dkotlinx.coroutines.debug才能看到


image.png image.png

配置后输出:

[main @coroutine#1] Started simple flow
[main @coroutine#1] Collected 1
[main @coroutine#1] Collected 2
[main @coroutine#1] Collected 3

相关文章

网友评论

    本文标题:Kotlin协程打印日志查看当前的线程和协程

    本文链接:https://www.haomeiwen.com/subject/pizglrtx.html