setExceptionHandler

abstract fun setExceptionHandler(handler: (CoroutineContext, Throwable) -> Unit?)

设置一个用于处理未捕获异常的处理器。

当协程中抛出一个异常且没有被 try-catch 捕获,并且该协程是根协程(或位于 supervisorScope 中)时, 这个处理器将被调用。这是在协程作用域级别集中处理错误的推荐方式。

Parameters

handler

一个接收当前上下文和异常作为参数的函数。 如果传入 null,则会从当前上下文中移除已有的异常处理器。