suspend 함수 내의 runBlocking 호출을 참조합니다.
suspend 함수 내에서 runBlocking을 사용하면 서스펜션 구조가 무효화되고 호출하는 스레드가 막히며 비동기 프로그래밍의 핵심적인 목적이 퇴색됩니다.
빠른 수정이 runBlocking을 컨텍스트에 따라 다음의 옵션 중 하나로 대체합니다.
run 호출.CoroutineContext가 제공되는 경우 withContext 호출.예:
suspend fun something() {
runBlocking {
code() // 여기서 스레드가 막힙니다
}
}
빠른 수정을 적용한 후:
suspend fun something() {
runBlocking {
code() // 비동기 실행
}
}
2025.1에서 추가