Skip to content

Instantly share code, notes, and snippets.

@af2905
Created November 11, 2023 22:11
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save af2905/547fdfa8b01fa26fce7c8fcaa1e89b80 to your computer and use it in GitHub Desktop.
Save af2905/547fdfa8b01fa26fce7c8fcaa1e89b80 to your computer and use it in GitHub Desktop.
coroutine_scope_launch
package kotlinx.coroutines
// --------------- launch ---------------
public fun CoroutineScope.launch(
context: CoroutineContext = EmptyCoroutineContext,
start: CoroutineStart = CoroutineStart.DEFAULT,
block: suspend CoroutineScope.() -> Unit
): Job {
val newContext = newCoroutineContext(context)
val coroutine = if (start.isLazy)
LazyStandaloneCoroutine(newContext, block) else
StandaloneCoroutine(newContext, active = true)
coroutine.start(start, coroutine, block)
return coroutine
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment