From 75522df205538e3d683f53b94d78da2d3a1507d9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcin=20Moska=C5=82a?= Date: Sun, 1 Sep 2019 10:36:45 +0200 Subject: [PATCH] Update 06_StructuredConcurrency.md It is a thought sentence. "We always start new coroutines inside a scope." sounds like all we do in scope is starting new coroutines. It is also not true that all coroutines start in some scope. `runBlocking` does not need that, as well as primitives functions and builders from external libraries. --- .../06_StructuredConcurrency.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Introduction to Coroutines and Channels/06_StructuredConcurrency.md b/Introduction to Coroutines and Channels/06_StructuredConcurrency.md index 9b637a5..0235583 100644 --- a/Introduction to Coroutines and Channels/06_StructuredConcurrency.md +++ b/Introduction to Coroutines and Channels/06_StructuredConcurrency.md @@ -1,7 +1,7 @@ # Structured concurrency _Coroutine scope_ is responsible for the structure and parent-child relationships between different coroutines. -We always start new coroutines inside a scope. +Coroutine builders, like `launch` and `async`, need to be started in some scope. _Coroutine context_ stores additional technical information used to run a given coroutine, like the dispatcher specifying the thread or threads the coroutine should be scheduled on.