Blog

Your dream job? Lets Git IT.
Interactive technical interview preparation platform designed for modern developers.

XGitHub

Platform

  • Categories

Resources

  • Blog
  • About the app
  • FAQ
  • Feedback

Legal

  • Privacy Policy
  • Terms of Service

© 2025 LetsGit.IT. All rights reserved.

LetsGit.IT/Categories/Kotlin
Kotlinhard

Coroutine cancellation is cooperative — what does that mean in practice?

Tags
#coroutines#cancellation#isActive#structured-concurrency
Back to categoryPractice quiz

Answer

Cancellation doesn’t magically stop CPU work; suspending functions check for cancellation, but tight loops must cooperate (check `isActive` or call `yield()`/`ensureActive()`). Otherwise a cancelled coroutine may keep running.

Related questions

Kotlin
coroutineScope vs supervisorScope: how do they handle failures?
#kotlin#coroutines#supervisor
Kotlin
StateFlow vs SharedFlow: what’s the difference?
#kotlin#stateflow#sharedflow
Kotlin
Coroutine exceptions: how do they propagate and when to use `CoroutineExceptionHandler`?
#kotlin#coroutines#exceptions
Kotlin
Dispatchers in Kotlin coroutines: `Default` vs `IO` vs `Main`?
#kotlin#coroutines#dispatchers
Kotlin
Channel vs Flow - how are they different in coroutines?
#kotlin#coroutines#flow
Kotlin
Job vs SupervisorJob — how do failures propagate?
#coroutines#job#supervisorjob