로딩
티스토리 데이터 처리 중입니다.

[Kotlin Coroutine] (1) - 자바 동시성, 스레드

 [Kotlin Coroutine] (1) - 자바 동시성, 스레드

안드로이드 개발을 하다 보면 어쩔 수 없이 동시성에 관련된 문제들을 마주치기 마련이다. 안드로이드 개발에서는 코틀린의 코루틴을 통해 UI 스레드가 중단되는 문제를 효율적으로 처리할 수 있다.

이제부터 코루틴에 대한 기본 개념과 사용 방법을 알아보고자 한다. 자바 동시성 코틀린이 존재하기 전 자바에서는 동시성을 어떻게 처리했을까?

바로 자바 동시성 기본 요소를 사용하는 것이다. 자바 동시성 기본 요소를 사용하면 스레드 안전성을 달성할 수 있다.

하지만 엄청난 단점이 존재한다. 대부분의 동시성 연산이 Blocking 연산임으로 스레드를 블럭하고 실행을 재개할 때 Context Switch(문맥 교환)를 해야 하므로 프로그램 성능에 부정적인 영향을 미치게 된다.

그래서 동시성 스레드를 많이 사용하는 것은 비실.....