【11】 kotlin 异常捕获
【Kotlin 协程】协程异常处理 ① ( 根协程异常处理 | 自动传播异常 | 在协程体捕获异常 | 向用户暴露异常 | 在 await 处捕获异常 | 非根协程异常处理 | 异常传播特性 )
文章目录一、协程异常处理二、根协程自动传播异常1、异常抛出点 ( 协程体抛出异常 )2、异常捕获点 ( 在协程体捕获异常 )三、根协程向用户暴露异常1、异常抛出点 ( 在 await、receive 处抛出异常 )2、异常捕获点 ( 在 await、receive 处捕获异常 )四、非根协程异常处理五、异常传播特性一、协程异常处理在 协程任务 中 , 执行的代码出现异常 , 需要进行 异常处理 ,
日期 2023-06-12 10:48:40【Kotlin 协程】协程异常处理 ③ ( 协程异常处理器 CoroutineExceptionHandler 捕获异常 | 验证 CoroutineScope 协程的异常捕捉示例 )
文章目录一、协程异常处理器 CoroutineExceptionHandler 捕获异常1、对比 launch 和 async 创建的协程的异常捕捉示例2、验证 CoroutineScope 协程的异常捕捉示例一、协程异常处理器 CoroutineExceptionHandler 捕获异常在 【Kotlin 协程】协程上下文 ( 协程上下文构成要素 | 指定协程上下文元素组合 | 协程上下文元素的
日期 2023-06-12 10:48:40【Kotlin 协程】协程异常处理 ④ ( Android 协程中出现异常导致应用崩溃 | Android 协程中使用协程异常处理器捕获异常 | Android 全局异常处理器 )
文章目录一、Android 协程中出现异常导致应用崩溃二、Android 协程中使用协程异常处理器捕获异常三、Android 全局异常处理器一、Android 协程中出现异常导致应用崩溃在前几篇博客示例中 , 协程中 如果出现异常 , 没有进行捕获 , 则程序直接崩溃 , 这种情况下需要进行 异常的捕获 以 避免 Android 应用程序的崩溃 ;示例代码 :package kim.hsl.co
日期 2023-06-12 10:48:40【Kotlin 协程】Flow 流异常处理 ( 收集元素异常处理 | 使用 try...catch 代码块捕获处理异常 | 发射元素时异常处理 | 使用 Flow#catch 函数捕获处理异常 )
文章目录一、Flow 流异常处理二、收集元素异常处理1、收集元素异常代码示例2、收集元素捕获异常代码示例三、发射元素异常处理1、发射元素异常代码示例2、发射元素异常捕获代码示例一、Flow 流异常处理在 Flow 流 的构建器代码 : flow , flowOf , asFlow ;发射元素 : emit 发射元素 ;收集元素 : collect 收集元素 ;各种运算符代码 : 过渡操作符 , 限
日期 2023-06-12 10:48:40【Kotlin 协程】Flow 流收尾工作 ( finally 代码块收尾 | onCompletion 代码块收尾 | onCompletion 中获取异常信息 | catch 代码块中捕获异常 )
文章目录一、Flow 流收尾工作二、onCompletion 函数原型三、finally 代码块收尾四、onCompletion 代码块收尾五、onCompletion 代码块中获取异常信息六、catch 代码块中捕获异常一、Flow 流收尾工作Flow 流 收集元素 完成后 , 需要进行收尾工作 , 如释放资源等 ;Flow 流 在执行时可能出现以下两种情况 :收集元素正常执行完成出现异常终止收
日期 2023-06-12 10:48:40【Kotlin】空安全 ⑤ ( 异常处理 | 捕获并处理异常 | 抛出自定义异常 )
文章目录一、Kotlin 中的异常处理1、捕获并处理异常2、抛出自定义异常一、Kotlin 中的异常处理在 Kotlin 程序中 , 处理异常 的方式有 :抛出默认异常抛出自定义异常捕获并处理异常1、捕获并处理异常捕获异常代码示例 : 在下面的代码中 ,name 变量是可空类型变量 , 其初始值为 null ,使用 非空断言操作符 !! 调用 变量 成员 , 不会进行 空值检查 ,如果变量为空 ,
日期 2023-06-12 10:48:40【Kotlin 协程】Flow 流收尾工作 ( finally 代码块收尾 | onCompletion 代码块收尾 | onCompletion 中获取异常信息 | catch 代码块中捕获异常 )
文章目录 一、Flow 流收尾工作二、onCompletion 函数原型三、finally 代码块收尾四、onCompletion 代码块收尾五、onCompletion 代码块中获取异常信息六、catch 代
日期 2023-06-12 10:48:40【Kotlin 协程】Flow 流异常处理 ( 收集元素异常处理 | 使用 try...catch 代码块捕获处理异常 | 发射元素时异常处理 | 使用 Flow#catch 函数捕获处理异常 )
文章目录 一、Flow 流异常处理二、收集元素异常处理1、收集元素异常代码示例2、收集元素捕获异常代码示例 三、发射元素异常处理1、发射元素异常代码示例2、发射元素异常捕获代码示例
日期 2023-06-12 10:48:40【Kotlin 协程】协程异常处理 ④ ( Android 协程中出现异常导致应用崩溃 | Android 协程中使用协程异常处理器捕获异常 | Android 全局异常处理器 )
文章目录 一、Android 协程中出现异常导致应用崩溃二、Android 协程中使用协程异常处理器捕获异常三、Android 全局异常处理器 一、Android 协程中出现异常导致应
日期 2023-06-12 10:48:40【Kotlin 协程】协程异常处理 ③ ( 协程异常处理器 CoroutineExceptionHandler 捕获异常 | 验证 CoroutineScope 协程的异常捕捉示例 )
文章目录 一、协程异常处理器 CoroutineExceptionHandler 捕获异常1、对比 launch 和 async 创建的协程的异常捕捉示例2、验证 CoroutineScope 协程的异常捕捉示
日期 2023-06-12 10:48:40【Kotlin 协程】协程异常处理 ① ( 根协程异常处理 | 自动传播异常 | 在协程体捕获异常 | 向用户暴露异常 | 在 await 处捕获异常 | 非根协程异常处理 | 异常传播特性 )
文章目录 一、协程异常处理二、根协程自动传播异常1、异常抛出点 ( 协程体抛出异常 )2、异常捕获点 ( 在协程体捕获异常 ) 三、根协程向用户暴露异常1、异常抛出点 ( 在 await、receive
日期 2023-06-12 10:48:40