美文网首页
协程 三(调度器)

协程 三(调度器)

作者: coke613 | 来源:发表于2023-07-06 10:01 被阅读0次
所有的协程必须在调度器中完成.即使它们在主线程上运行也是如此.

kotlin提供了几种预定义的调度器

  • Dispatchers.Default: 默认调度器.

    适合执行CPU密集型的计算任务.

  • Dispatchers.IO:非主线程.

    用于执行IO密集型的任务.如网络请求或文件操作.

  • Dispatchers.Main:主线程

    用于在Android应用程序中执行ui相关的操作,在主线程执行.

        GlobalScope.launch { 
            launch(Dispatchers.IO) { 
                // 在IO调度器上执行IO密集任务 例如请求网络,文件读写
            }
            
            launch (Dispatchers.Default ){
                // 在Default执行计算密集任务 例如操作数据相关
            }
            
            launch (Dispatchers.Main){
                // 更新ui 响应用户交互
            }
        }

相关文章

  • Kotlin(二十)协程(上下文和调度器)

    1.调度器和线程 协程调度器Dispatchers 可以将协程运行在指定的线程上,也可以将其分派到线程池中,或者让...

  • go协程学习笔记

    协程本质: go协程本质上还是用线程来运行代码,只是在多线程上增加了调度器,通过调度器让每一个线程可以执行多个协程...

  • go 学习笔记1

    关注点 go 的协程(routine)是通过调度器,调度,每个调度器绑定到一个线程(thread)上 引用类型 ...

  • 线程,协程,进程

    什么是协程? 1、协程是一种用户态的轻量级线程,协程的调度完全由用户控制。 2、协程拥有自己的寄存器上下文和栈。 ...

  • 3.协程的调度(1)

    上一张通过四种启动模式,我们知道只有调度器ok,才能执行协程里面的代码,那么协程是如何调度的?下面是Corouti...

  • swoole 协程(Coroutine)和通道(Channel)

    首先,了解下协程是什么??协程是一种用户态的轻量级线程,协程的调度完全由用户控制。协程拥有自己的寄存器上下文和栈。...

  • [Android] 深入理解Kotlin协程

    Kotlin协程 协程由程序自己创建和调度,不需要操作系统调度,所以协程比线程更加轻量。相比于线程的切换,协程切换...

  • Golang协程调度器

    说在前面 Golang作为Google亲自孵化出来一门现代编程语言,可以说是吸收了众多早期编程语言的优点,又有其自...

  • 协程调度器详解

    协程和线程的差异 线程的目的是提高CPU资源使用率, 使多个任务得以并行的运行,是为了服务于机器的. 协程的目的是...

  • Python 协程学习笔记

    协程 协程是轻量级线程,拥有自己的寄存器上下文和栈。协程调度切换时,将寄存器上下文和栈保存到其他地方,在切回来的时...

网友评论

      本文标题:协程 三(调度器)

      本文链接:https://www.haomeiwen.com/subject/mxekudtx.html