= object : Continuation<Unit>, CoroutineScope, Job { 3 init{ 4 context[Job]?.addChildren(this) 5 } 6 override val context = scopeContext + extraContext + this 7 override fun resumeWith(result: Result<Unit>) { 8 context[Job]?.waitForChildren() 9 } 10 } 11 12 val continuation = block.createCoroutineUnintercepted(completionCallback,complet 13 14 DispatchedContinuation(dispatcher,continuation).resumeWith(Result.success(Unit)) 15 } 16 val completionCallback = object : Continuation<Unit>, CoroutineScope, Job { fun CoroutineScope.launch(extraContext: CoroutineContext, block: suspend CoroutineSc 1 2 3 init{ 4 context[Job]?.addChildren(this) 5 } 6 override val context = scopeContext + extraContext + this 7 override fun resumeWith(result: Result<Unit>) { 8 context[Job]?.waitForChildren() 9 } 10 } 11 12 val continuation = block.createCoroutineUnintercepted(completionCallback,complet 13 14 DispatchedContinuation(dispatcher,continuation).resumeWith(Result.success(Unit)) 15 } 16 init{ context[Job]?.addChildren(this) } fun CoroutineScope.launch(extraContext: CoroutineContext, block: suspend CoroutineSc 1 2 val completionCallback = object : Continuation<Unit>, CoroutineScope, Job { 3 4 5 6 override val context = scopeContext + extraContext + this 7 override fun resumeWith(result: Result<Unit>) { 8 context[Job]?.waitForChildren() 9 } 10 } 11 12 val continuation = block.createCoroutineUnintercepted(completionCallback,complet 13 14 DispatchedContinuation(dispatcher,continuation).resumeWith(Result.success(Unit)) 15 } 16 context[Job]?.waitForChildren() fun CoroutineScope.launch(extraContext: CoroutineContext, block: suspend CoroutineSc 1 2 val completionCallback = object : Continuation<Unit>, CoroutineScope, Job { 3 init{ 4 context[Job]?.addChildren(this) 5 } 6 override val context = scopeContext + extraContext + this 7 override fun resumeWith(result: Result<Unit>) { 8 9 } 10 } 11 12 val continuation = block.createCoroutineUnintercepted(completionCallback,complet 13 14 DispatchedContinuation(dispatcher,continuation).resumeWith(Result.success(Unit)) 15 } 16 fun CoroutineScope.launch(extraContext: CoroutineContext, block: suspend CoroutineSc val completionCallback = object : Continuation<Unit>, CoroutineScope, Job { init{ context[Job]?.addChildren(this) } override val context = scopeContext + extraContext + this override fun resumeWith(result: Result<Unit>) { context[Job]?.waitForChildren() } } val continuation = block.createCoroutineUnintercepted(completionCallback,complet DispatchedContinuation(dispatcher,continuation).resumeWith(Result.success(Unit)) } 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16