-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
코루틴 - 1 면접 질문 #105
Comments
|
코루틴이란, 루틴의 일종으로 협동 루틴을 의미한다. |
코루틴은 매우 가벼워서 수백만 개의 코루틴을 생성하고 전환하는 것이 수백 개의 스레드를 생성하고 전환하는 것보다 훨씬 효율적이다. 스레드는 생성, 전환, 동기화에 큰 비용이 들지만, 코루틴은 이러한 비용이 매우 적다. 스레드는 동시성을 보장하기 위해 Context Switching이 이루어지는데 이는 비용이 많이 드는 작업이다. 코루틴은 중단했다가 다시 실행할 수 있는 컴포넌트이기 때문에 Context Switching이 이루어지지 않아도 동시성을 보장할 수 있다. |
|
|
안드로이드에선 viewModelScope 확장 프로퍼티를 사용하며, 자식 코루틴들에게 supervisorJob과 Main.immediate 디스패처를 전달하며, 생명주기에 맞게 구조화된 코루틴을 관리한다. |
|
|
CoroutineDispatcher는 무엇이며 코루틴 실행을 관리하는 데 왜 중요합니까? |
코루틴 스코프 함수로 코루틴 컨텍스트를 바꿀 수 있는 coroutineScope이다. |
|
|
|
withTimeout을 사용하여 시간 초과를 처리할 수 있다. |
|
|
|
|
|
|
|
The text was updated successfully, but these errors were encountered: