Kotlin协程flow,firstOrNull只要最先first,lastOrNull只要最后

Kotlin协程flow,firstOrNull只要最先first,lastOrNull只要最后

 

        <!-- https://mvnrepository.com/artifact/org.jetbrains.kotlinx/kotlinx-coroutines-core -->
        <dependency>
            <groupId>org.jetbrains.kotlinx</groupId>
            <artifactId>kotlinx-coroutines-core</artifactId>
            <version>1.7.3</version>
            <type>pom</type>
        </dependency>
import kotlinx.coroutines.delay
import kotlinx.coroutines.flow.*
import kotlinx.coroutines.runBlocking

fun main(args: Array<String>) {
    runBlocking {
        val firstResult = load()
            .firstOrNull() //虽然发射很多数据,但只要第1次发射过来的数据。
        println(firstResult)

        val lasResult = load()
            .lastOrNull() //虽然发射很多数据,但只要最后1次发射过来的数据。
        println(lasResult)
    }
}

fun load() = flow {
    for (i in 1..5) {
        emit(i)
        delay(10)
    }
}

f66a04c0c41e46b0b8d0cec959067e90.png

kotlin协程flow任务意外结束未emit数据retryWhen onEmpty(5)_zhangphil的博客-CSDN博客一、flow ,emit,onCompletion,collect。kotlin协程flow retryWhen当功能函数加载失败后重试(3)_zhangphil的博客-CSDN博客。kotlin协程flow retryWhen当功能函数加载失败后重试(3)加载一次失败,重试1次成功。kotlin协程flow retryWhen当功能函数加载失败后重试(3)_zhangphil的博客-CSDN博客。kotlin协程flow retryWhen当功能函数加载失败后重试(3)加载一次失败,重试1次成功。https://blog.csdn.net/zhangphil/article/details/130115220

kotlin协程flow retry功能函数返回失败后重试(4)_zhangphil的博客-CSDN博客一、flow ,emit,onCompletion,collect。kotlin协程flow retryWhen当功能函数加载失败后重试(3)_zhangphil的博客-CSDN博客。kotlin协程flow retryWhen当功能函数加载失败后重试(3)加载一次失败,重试1次成功。kotlin协程flow retry retryWhen(2)_zhangphil的博客-CSDN博客。kotlin协程flow retry retryWhen(2)二、retryWhen。初次加载失败,重试两次成功。https://blog.csdn.net/zhangphil/article/details/130093111kotlin协程flow retryWhen当功能函数加载失败后重试(3)_zhangphil的博客-CSDN博客kotlin协程flow retryWhen当功能函数加载失败后重试(3)加载一次失败,重试1次成功。https://blog.csdn.net/zhangphil/article/details/130092299

kotlin协程flow retry retryWhen(2)_zhangphil的博客-CSDN博客kotlin协程flow retry retryWhen(2)二、retryWhen。https://blog.csdn.net/zhangphil/article/details/130086523

kotlin协程flow filter map flowOn zip combine(1)_zhangphil的博客-CSDN博客一、flow ,emit,onCompletion,collect。四、map,重组改写数据。八、conflate 合并。九、debounce去重。二、函数作为flow。https://blog.csdn.net/zhangphil/article/details/130084723

猜你喜欢

转载自blog.csdn.net/zhangphil/article/details/132492588
今日推荐