摘要:
一,区别: supervisorScope 的直接子协程是可以捕获到异常的,因为这些 supervisorScope 的子协程需要自己处理异常。 与 supervisorScope 不同的是,coroutineScope 的直接子协程不能捕捉到异常 二,例子:supervisorScope的直接子协 阅读全文
posted @ 2025-08-09 13:41
刘宏缔的架构森林
阅读(9)
评论(0)
推荐(0)
摘要:
一,CoroutineExceptionHandler捕获异常的条件 CoroutineExceptionHandler 捕获异常需要两个条件: 这个异常是自动传播的。 CoroutineExceptionHandler 位于 CoroutineScope 的 CoroutineContext 中, 阅读全文
posted @ 2025-08-09 13:41
刘宏缔的架构森林
阅读(16)
评论(0)
推荐(0)
摘要:
一,CoroutineExceptionHandler不同的用法 统一给父协程定义一个 CoroutineExceptionHandler,如果一个子协程异常了,其他子协程也不需要继续的话就采用 coroutineScope 方法,默认的 Job 就是这种表现,如果一个子协程异常了,其他子协程还需要 阅读全文
posted @ 2025-08-09 13:40
刘宏缔的架构森林
阅读(32)
评论(0)
推荐(0)
摘要:
一,CoroutineContext 协程上下文包含哪些元素? Job:控制协程的生命周期。 CoroutineDispatcher: 指定分发任务的线程,这一项就是我们已经介绍过的调度器:Dispatchers。默认值是 Dispatchers.Default。 CoroutineName:指定协 阅读全文
posted @ 2025-08-09 13:40
刘宏缔的架构森林
阅读(9)
评论(0)
推荐(0)
摘要:
一,代码 代码: //处理按钮点击事件 binding.button1.setOnClickListener { runBlocking { log(1) val job = GlobalScope.launch(start = CoroutineStart.UNDISPATCHED) { log( 阅读全文
posted @ 2025-08-09 13:40
刘宏缔的架构森林
阅读(11)
评论(0)
推荐(0)
摘要:
一,例一:atomic模式启动 代码: //处理按钮点击事件 binding.button3.setOnClickListener { runBlocking { log(1) val job = GlobalScope.launch(start = CoroutineStart.ATOMIC) { 阅读全文
posted @ 2025-08-09 13:40
刘宏缔的架构森林
阅读(11)
评论(0)
推荐(0)
摘要:
一,协程的四大启动模式 LAZY 是懒汉式启动,launch 后并不会有任何调度行为,协程体也自然不会进入执行状态,直到我们需要它执行的时候。当需要它的运行结果的时候, launch 调用后会返回一个 Job 实例,对于这种情况,我们可以: 调用 Job.start,主动触发协程的调度执行 调用 J 阅读全文
posted @ 2025-08-09 13:40
刘宏缔的架构森林
阅读(12)
评论(0)
推荐(0)
摘要:
一,代码: fun listDemo() { //定义一个整数list val list = listOf(1, 2, 3, 4, 5, 6, 7) //集合类中持有函数类型的变量 val funlist: List<(Int) -> Boolean> = listOf({ it -> it % 2 阅读全文
posted @ 2025-08-09 13:40
刘宏缔的架构森林
阅读(8)
评论(0)
推荐(0)
摘要:
一,代码: 扩展: //第一个字符 fun String.firstChar(): String { if (this.isEmpty()) return "" return this[0].toString() } //最后一个字符 fun String.lastChar(): String { 阅读全文
posted @ 2025-08-09 13:40
刘宏缔的架构森林
阅读(6)
评论(0)
推荐(0)
摘要:
一,代码: //比较lambda和匿名函数的区别 fun diffLambAnoni() { //区别1:匿名函数通过fun关键字定义的 // lambda不用fun定义 //区别2:返回 Lambda表达式中,返回值是最后一个表达式的结果 //匿名函数中,必须使用 return关键字显式指定返回值 阅读全文
posted @ 2025-08-09 13:40
刘宏缔的架构森林
阅读(5)
评论(0)
推荐(0)
浙公网安备 33010602011771号