Thread and Coroutines (Kotlin)


Thread and Coroutines (Kotlin)

코틀린에서 멀티태스크, 병행성(concurrency)를 위해 여러가지 방법이 있다. 여러 방법 중 기본적인 스레드와 스레드의 문제점을 개선한 코루틴을 비교해보려한다. - 스레드 스레드는 멀티태스크를 위한 가장 기본 방식이다. 하지만 스레드의 생성, 전환, 관리시에 시스템 자원을 크게 소모한다. 또한 프로세스의 특성으로 인해 다루기 어렵고 예측 불가능 하다. 앱 개발에서 mainThread가 UI 생성 및 관리를 맡고 있는데, 요즘은 휴대폰에서 120Hz를 지원한다. 그러면 초당 60~120번의 UI생성이 이루어 지는 것이고, mainThread는 이것을 한 프레임당 16ms 보다 짧은 시간에 해야한다. 물론 프레임 드랍이 생기는 것은 흔하지만 자주 발생한다면 앱 사용성을 해치고, 최악엔 앱에서 충돌이 일..


원문링크 : Thread and Coroutines (Kotlin)