4. 비동기 흐름 제어: suspend 함수와 withContext4.1 suspend 함수란?suspend는 코틀린에서 비동기 작업을 정의할 때 사용되는 키워드입니다. suspend 함수는 일시 중단될 수 있는 함수로, 실행 중간에 일시적으로 멈췄다가 다른 작업을 처리한 후 다시 재개될 수 있습니다. 일반 함수와는 달리 코루틴 내에서만 호출될 수 있으며, 비동기 작업을 처리하는 데 최적화되어 있습니다.suspend 함수는 동기적 코드처럼 작성하지만, 실제로는 비동기적으로 실행되어 코드 가독성을 크게 향상시킵니다.suspend 함수의 특징:코루틴 내에서만 호출될 수 있습니다.코루틴 내에서 호출된 suspend 함수는 일시적으로 중단되었다가 재개될 수 있습니다.비동기 흐름 제어를 동기적 코드처럼 간단하고 ..
2. 코루틴 스코프 및 컨텍스트2.1 코루틴 스코프(Coroutine Scope)란?코루틴 스코프는 코루틴의 수명을 관리하는 역할을 합니다. 코루틴은 스코프 내에서만 실행되며, 스코프가 종료되면 그 스코프 내에서 실행된 모든 코루틴도 자동으로 취소됩니다. 이는 구조화된 동시성을 구현하는 중요한 개념으로, 비동기 작업이 여러 개 실행되더라도 일정한 흐름 안에서 안전하게 관리될 수 있도록 해줍니다.코루틴은 여러 개의 스코프에서 동작할 수 있으며, 대표적으로 두 가지 스코프를 사용할 수 있습니다:GlobalScope: 앱이 종료되기 전까지 코루틴이 계속 실행됩니다. 하지만 자원을 낭비할 수 있기 때문에 권장되지 않습니다.CoroutineScope: 특정한 범위에서만 코루틴이 실행되며, 해당 범위가 끝나면 코루..