Suspending lambdas are just anonymous suspending functions and follow the same convention as the later. The exceptions to this rule are withContext
and various coroutine builders like launch
, that is all the functions that take CoroutineContext
as their parameter, allowing to explicitly specify dispatcher to move blocking code out of the main/critical threads.