全国服务热线:400-6263-721

位置:南昌达内IT教育培训学校 > 学校动态 > 进程 线程 协程的关系

进程 线程 协程的关系

来源:南昌达内IT教育培训学校时间:2022/3/31 17:13:36

  进程: 本质上是一个独立执行的程序,进程是操作系统进行资源分配和调度的基本概念,操作系统进行资源分配和调度的一个独立单位。

  线程: 是操作系统能够进行运算调度的zui小单位。它被包含在进程之中,是进程中的实际运作单位。一个进程中可以并发多个线程,每条线程执行不同的任务,切换受系统控制。

  协程: 又称为微线程,是一种用户态的轻量级线程,协程不像线程和进程需要进行系统内核上的上下文切换,协程的上下文切换是由用户自己决定的,有自己的上下文,所以说是轻量级的线程,也称之为用户级别的线程就叫协程,一个线程可以多个协程,线程进程都是同步机制,而协程则是异步Java的原生语法中并没有实现协程,目前python、Lua和GO等语言支持。

  关系:一个进程可以有多个线程,它允许计算机同时运行两个或多个程序。线程是进程的较小执行单位,CPU

  的调度切换的是进程和线程,进程和线程多了之后调度会消耗大量的CPU,CPU上真正运行的是线程,线程可

  以对应多个协程。

  协程对于多线程有什么优缺点吗?

  优点:

  非常的上下文切换,不用系统内核的上下文切换,减小开销。

  单线程即可实现高并发,单核CPU可以支持上万的协程。

  由于只有一个线程,也不存在同时写变量的冲突,在协程中控制共享资源不需要加锁。

  缺点:

  协程无法利用多核资源,本质也是个单线程。

  协程需要和进程配合才能运行在多CPU上。

  目前java没成熟的第三方库,存在风险。

  调试debug存在难度,不利于发现问题。

领取试听课
每天限量名额,先到先得

尊重原创文章,转载请注明出处与链接:http://www.peixun360.com/1810/news/507517/违者必究! 以上就是南昌达内IT教育培训学校 小编为您整理 进程 线程 协程的关系的全部内容。

温馨提示:提交留言后老师会第一时间与您联系!热线电话:400-6263-721