flow(2)
-
Coroutine Flow BackPressure & Buffer
BackPressure 업스트림 생산자가 다운스트림 소비자에게 스트림을 emit하는데, 소비자가 emit속도를 맞춰 방출할 수 없을 때 발생 ( 처리속도 고려 없이 emit )메모리 사용 및 성능 문제가 발생해결하기 위한건? → buffer Buffer아래와 같이 적용하면 됩니다lifecycleScope.launch { flowOf("A","B","C","D","E") .onEach { println("Wizard emits: $it") } .buffer() .collect { println("Lady collects: $it") delay(2000) } } 요것이Wizard emits A Lady collects A Wizard emits B Lady collects B Wizard emits C La..
2023.11.30 -
Kotlin flow 병렬로 장기 작업 실행
작업 가져오기특정 날짜에 결석한 학생 테이블에서 학생 정보 가져오기물리학을 공부하는 학생 목록 가져오기 // 결석 학생 목록을 가져오는 suspension 함수를 정의합니다. stop fun getAbsentStudents (date: Date ) : List { // 결석 학생 목록을 가져오기 위해 장기 실행 작업을 수행합니다 . // 결석 학생 목록을 반환합니다 . } // 물리학을 공부하는 학생 목록을 가져오기 위해 일시 중지 함수를 정의합니다. suspens fun getPhysicsStudents () : List { // 물리학을 공부하는 학생 목록을 가져오기 위해 장기 실행 작업을 수행합니다. // 물리학 학생 목록을 반환합니다. } / / 두 가지 정지 함수의 실행을 병렬화하는 흐름을 정의..
2023.11.01