Why does it print 'a' after 1 second if the thread is blocked for 3 seconds?
When a thread is blocked it can't do any computation until it is unlocked. How come is it possible to execute println('a') while this thread is blocked by Thread.sleep()?
import kotlinx.coroutines.*
fun main() = runBlocking(Dispatchers.Default) {
GlobalScope.launch(Dispatchers.Default) {
delay(1000L)
println("a")
}
Thread.sleep(3000L)
}