Android
[Android] 코루틴이란 무엇인가.
plzyhappy
2022. 5. 17. 11:38
코루틴을 알기 전에 먼저 스레드에 대해 알아야 한다.
스레드란 하나의 프로세스 내에서 일하는 작업 단위라고 생각하면 된다.
Android에서는 비즈니스 로직을 UI 스레드에 쓰면 안 되고 Work스레드에 써야 하는 건 다들 알 고 있을 것이다.
이때 Work스레드를 이용하는 방법에는 여러 가지가 있다.
ex) rx , coroutine
하지만 정확히 말하자면 코루틴과 스레드는 다른 개념이다.
코루틴과 스레드의 차이
- 코루틴은 하나의 실행이 시작할 때부터 끝날 때까지의 주기를 나타낸다고 한다면
- 스레드는 그 일이 실행되는 곳이다.
그래서 하나의 스레드에 여러 코 루틴이 존재할 수 있다.
코루틴 이란.
코루틴을 처음 들었을 때 kotlin + 루틴 해서 코 루틴인 줄 아는 사람들이 있을 것이다.
하지만 그것은 틀렸다.
co(동시에)라는 뜻을 가지고 있어, 동시성을 의미한다. 동시성 프로그래밍 개념을 kotlin에 도입한 것이다.
Android에서 코 루틴이란 비동기적으로 실행되는 코드를 간소화하기 위해 Android에서 사용할 수 있는 동시 설계 패턴이라고 한다.
간단하게 코루틴이 뭔지에 대해 알아봤다.
다음 포스팅에서는 코 루틴을 어떻게 쓸 수 있을지에 포스팅해야겠다.
레퍼런스
https://developer.android.com/kotlin/coroutines?hl=ko
https://blog.yena.io/studynote/2020/04/26/Android-Kotlin-Coroutine.html