An optional element in the coroutine context to handle uncaught exceptions.
Normally, uncaught exceptions can only result from coroutines created using the launch builder. A coroutine that was created using async always catches all its exceptions and represents them in the resulting Deferred object.
By default, when no handler is installed, uncaught exception are handled in the following way:
- If exception is CancellationException then it is ignored (because that is the supposed mechanism to cancel the running coroutine)
Key for CoroutineExceptionHandler instance in the coroutine context.
Cancels all children of the Job in this context, without touching the state of this job itself with an optional cancellation cause. See Job.cancel. It does not do anything if there is no job in the context or it has no children.