1. Coroutine에서 Hot Stream(Hot Observable) 과 Cold Stream(Cold Observable)
가장 중요한 차이점은 옵저버가 데이터 스트림을 구독할 때
해당 데이터 스트림이 구독으로 인해 변화하느냐 아니냐라는 점이다
Cold Stream의 경우 옵저버가 데이터 스트림을 구독하면 해당 스트림의 데이터가 처음부터 다시 생성되고
Hot Stream의 경우 이미 생성된 데이터 스트림을 옵저버가 구독하여 그 시점부터 데이터를 받아보는것이다.
2. StateFlow에서 값을 변경할 때 data.value = somthing 과 date.update(somthing)의 차이
value로 변경하는 경우 "동일한 값을 넣어도 새로운 상태로 지정"
update로 변경하는 경우 "compareAndSet 함수를 사용하기 때문에 값이 다른 경우에만 새로운 상태로 지정"
3. Coroutine suspend fun의 작동 원리
https://nuritech.tistory.com/16
바이트 코드로 변환된 suspend function은 파라미터로써 Continuation을 받는데
이 Continuation을 통해 프로그램의 현재 상태를 저장하여
일시중단 후 재개가 가능하게 되는것
'잡담' 카테고리의 다른 글
자바 기반 교재를 구매했다 (0) | 2021.10.22 |
---|---|
면접 후기 (0) | 2021.07.22 |
코딩테스트 쉽지않다 (0) | 2021.07.20 |