프로그래밍/Android

Upstream Flow, Downstream Flow

Lou Park 2022. 5. 20. 00:32

Upstream Flow

Producer Block에서 생성한 Flow , 현재 연산자 전. Flow를 설명할때 대부분은 UI를 가장 아래쪽에, Remote data source를 가장 위쪽에 위치하는 도식으로 표현되는데, 상류의 물(데이터)이 아래쪽으로 내려오는식으로 이해하면된다.

 

Downstream Flow

현재 연산자 이후의 모든 Flow

 

collect

새로운 값이 생길때마다 호출되는 함수를 매개변수로 받는다. collect를 호출할 때마다 새 Flow가 생성된다.

이러한 Flow는 Cold Flow라고 하는데, 필요에따라 생성되고, 관찰되는 중에만 데이터를 전송하기 때문이다.

 

StateFlow

컬렉터가 없더라도 데이터를 보관하고 있다.

 

출처 Android Dev Submmit 2021 - Kotlin Flows in practice