About


알려주고 싶은 정보를 작성해주세요!


닉네임을 알려주세요!
추후 문서 작성시 기여자로 나타납니다.


Coroutine (코루틴)

기타
Coroutine은 Co, Routine을 합친 단어로 협력의 뜻을 가진 Co라는 접두어를 통해 협력하는 함수라고 생각하면 됩니다. 일반적인 코드는 동기화가 되어 있어 코드에 있는 순서대로 일을 처리하는 한편, coroutine을 사용하게 되면 루틴이 끝나기 전에 자유롭게 나올 수 있기 때문에 비동기 처리를 쉽게 할 수 있습니다. 동시에 진행되는 병렬성 프로그래밍과 달리 함수를 중간에 빠져나왔다가 다른 함수에 진입하고 다시 돌아와 멈춰있던 부분부터 실행하는 동시성 프로그래밍을 지원합니다. 실제 여러 언어에서 이 개념을 지원하지만 특히 kotlin에서 많이 사용됩니다.
콜백함수로 정말 읽기 힘든 코드를 정말 간단하게 바꿔주어 비동기 처리를 쉽게 하는 점이 큰 장점이라 구글에서도 안드로이드 공식 언어를 java에서 kotlin으로 변경한 이후 앱의 비동기처리를 coroutine으로 변경하였습니다.