与频道和广播频道类似,流是否也可以在多个地方实例化和重用?
创建流的一般用法是包装逻辑以在流的主体内发出数据并返回。
片段:
fun listenToDataChanges() : Flow<T>
{
return flow {
dataSource.querySomeInfo()?.consumeEach {
data->
if (someCondition) {
emit(data)
}
}
}
}
每次调用 listenToDataChanges() 时,都会创建一个新的流实例并进行多个订阅。相反,是否可以创建和重用实例以避免多次订阅?