协程(coroutine)

未知
2024-03-11 11:22:50
0
摘要:协程不是系统级线程,很多时候协程被称为“轻量级线程”、“微线程”、“纤程(fiber)”等。简单来说可以认为协程是线程里不同的函数,这些函数之间可以相互快速切换

协程不是系统级线程,很多时候协程被称为“轻量级线程”、“微线程”、“纤程(fiber)”等。简单来说可以认为协程是线程里不同的函数,这些函数之间可以相互快速切换

协程和用户态线程非常接近,用户态线程之间的切换不需要陷入内核,但部分操作系统中用户态线程的切换需要内核态线程的辅助

协程是编程语言(或者 lib)提供的特性(协程之间的切换方式与过程可以由编程人员确定),是用户态操作。协程适用于 IO 密集型的任务。常见提供原生协程支持的语言有:c++20、golang、python 等,其他语言以库的形式提供协程功能,比如 C++20 之前腾讯的 fiber 和 libco 等等

热门词条

编程语言 编程语言(programming language),是用来定义计算机程序的形式语言。它是一种被标准...
云计算 云计算(cloud computing)是分布式计算的一种,指的是通过网络“云”将巨大的数据计算处理...
编程 编程是编写程序的中文简称,就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码,并最终得到相...
异步 异步编程是一种编程模式,旨在提高程序的性能和响应速度。通过将某些任务异步执行,程序可以在等待结果时继...
面向对象 面向对象(Object Oriented)是软件开发方法,一种编程范式。面向对象的概念和应用已超越了...
协程(coroutine) 协程不是系统级线程,很多时候协程被称为“轻量级线程”、“微线程”、“纤程(fiber)”等。简单来说...

最新词条

云计算 云计算(cloud computing)是分布式计算的一种,指的是通过网络“云”将巨大的数据计算处理...
异步 异步编程是一种编程模式,旨在提高程序的性能和响应速度。通过将某些任务异步执行,程序可以在等待结果时继...
协程(coroutine) 协程不是系统级线程,很多时候协程被称为“轻量级线程”、“微线程”、“纤程(fiber)”等。简单来说...
面向对象 面向对象(Object Oriented)是软件开发方法,一种编程范式。面向对象的概念和应用已超越了...
编程 编程是编写程序的中文简称,就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码,并最终得到相...
编程语言 编程语言(programming language),是用来定义计算机程序的形式语言。它是一种被标准...