Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kotlin 发出新值时删除操作_Kotlin_Kotlin Flow - Fatal编程技术网

Kotlin 发出新值时删除操作

Kotlin 发出新值时删除操作,kotlin,kotlin-flow,Kotlin,Kotlin Flow,有没有一种方法可以在发出新值时删除正在收集的流上的所有操作,以便在处理新值的同时删除旧值,并且在发出新值后不再处理流下的所有操作?我相信您正在寻找flow.collectLatest 流是一个值流。如果您只关心单个值,为什么要使用flow开头?@huytc我关心最新的值。如果在完全处理旧值之前已发出新值,我希望将旧值全部删除,然后开始处理新发出的值。我知道collectLast,但它是:1。只在它执行的最后一个流上工作,而不是在2上执行操作的原始流上。需要修改流收集以便正常工作我将接受您的回答,

有没有一种方法可以在发出新值时删除正在收集的流上的所有操作,以便在处理新值的同时删除旧值,并且在发出新值后不再处理流下的所有操作?

我相信您正在寻找flow.collectLatest


流是一个值流。如果您只关心单个值,为什么要使用flow开头?@huytc我关心最新的值。如果在完全处理旧值之前已发出新值,我希望将旧值全部删除,然后开始处理新发出的值。我知道collectLast,但它是:1。只在它执行的最后一个流上工作,而不是在2上执行操作的原始流上。需要修改流收集以便正常工作我将接受您的回答,因为我没有找到更好的解决方案,因为我将回答相同的问题。