Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 1003 파이썬
- 10819 파이썬
- 자료구조
- 1806 백준
- 안드로이드 hilt
- Jetpack Room
- 5582 파이썬
- 1753 다익스트라
- 백준 10819
- Android Room
- android hilt
- java
- Android mvp
- 1806 투포인터
- 6588 파이썬
- 1806 파이썬
- 백준 5582
- Coroutine Flow
- 2096 파이썬
- 이진 탐색
- git local remote
- 5582 DP
- 백준 1644
- 자바
- 1644 파이썬
- 코루틴 플로우
- 1753 파이썬
- 백준 2096
- flow buffering
- 투포인터 알고리즘
Archives
- Today
- Total
Gemstone's Devlog
[Coroutine Flow] Buffering 본문
https://kotlinlang.org/docs/flow.html#conflation
위 공식 사이트에서 flow에 대해서 더욱 자세히 공부하다가 Buffering에 대해 정리하려고 한다.
내가 이해한 바로는
Flow는 cold이기 때문에 collect를 호출해야만 데이터 스트림이 방출되고,
처음에 buffer를 등록해두고 collect를 통해 flow 데이터를 수집하기 시작할 때,
처음 emit에서 100ms가 걸리고, 처음 프로세스에서 300ms 가 소요되는 동안 emit(2)와 emit(3)의 결과가
buffer에 저장되고, 처음 프로세스가 끝나면 두번 째, 세번째 프로세스는 buffer에 저장된 emit된 결과를 가져오기만 하면
되기 때문에 효율성이 증대된다.
'Kotlin (Android)' 카테고리의 다른 글
[Kotlin] Sealed Class, Generics Class 정리 (0) | 2022.07.02 |
---|---|
[Coroutine] Atmoic Variables (0) | 2022.07.01 |
Room 지속성 라이브러리 공부! (0) | 2022.06.28 |
[Coroutine Flow] 콜백 기반 api -> flow 변경 방법 (0) | 2022.06.24 |
[Coroutine] Async (0) | 2022.06.23 |