Why does withContext await for the completion of child coroutines
问题 The documentation of withContext states Calls the specified suspending block with a given coroutine context, suspends until it completes, and returns the result. However, the actual behavior is that it awaits on all the child coroutines as well, and doesn't necessarily return the result of the block but instead propagates any exception in the child coroutine. suspend fun main() { try { val result = withContext(coroutineContext) { launch { delay(1000L) throw Exception("launched coroutine broke