목록2024/12/29 (1)
성장기록지
suspend 함수의 내부 구현 알아보기 (1탄)
진행한 프로젝트의 콜백지옥을 해결하기 위해 여러 학습을 진행 중suspend 함수의 내부 구조에 대해 학습하게 되었다.많은 학습량이 있지만 우선 CPS에 대한 이론을 다뤄보겠다.Kotlin 컴파일러가 suspend 키워드를 만났을 때코루틴은 Continuation Passing Style(CPS) 형태로 동작한다.CPS는 호출되는 함수에 Continuation을 전달하고, 각 함수의 작업이 완료되는 대로 전달받은 Continuation을 호출하는 방식을 말한다.그렇다면 Continuation 이란 뭘까? Continuation 인터페이스를 한번 알아보도록 하겠다.Continuation 인터페이스에는 크게 context객체와 resumeWith() 함수가 있다.context는 각 Continuation이 ..
안드로이드/안드로이드 지식
2024. 12. 29. 20:04