Ответ
Flow относится к реактивным потокам данных (reactive streams) и является частью Kotlin Coroutines. Это холодный (cold) поток, который начинает испускать данные только при наличии подписчика. В отличие от горячих потоков (например, StateFlow или SharedFlow), Flow не хранит состояние и запускает генерацию данных для каждого нового коллектора.
Пример использования:
fun fetchData(): Flow<String> = flow {
emit("Data 1")
delay(1000)
emit("Data 2")
}
// Коллектинг
viewModelScope.launch {
fetchData().collect { data ->
println(data)
}
}