博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
进程、线程、纤程
阅读量:4035 次
发布时间:2019-05-24

本文共 488 字,大约阅读时间需要 1 分钟。

进程:是操作系统分配资源的基本单位,对于一个应用程序启动,就会开启对应的一个进程,分配一块内存空间。对linux而言,一个进程的内核数据结构是一个PCB(进程描述符 Process Control Block),用来存储进程的相关信息。

 

线程:执行调度的基本单位。一个进程会开启一个或多个线程, 这些线程会共享进程的内存空间,没有线程自己独立的内存空间。

在hotspot的jvm中,一个线程,对应操作系统的一个线程。 这个过程对于jvm的应用来讲,应用开启一个线程,会调用jvm底层进行请求操作内核开启一个系统线程,实际上会发生一个系统调用,这个时候,会有用户态到内核态的一个切换过程,会通过int 0x80(80中断/软中断)机制进行系统调用,执行系统函数。然后再把结果一层层返回给应用。

 

纤程(协程):是线程中的线程,比线程更轻量级,是完全执行在用户态的线程,切换和调度都不需要经过操作系统老大。

     优势:

           1、轻量级,大小比较小,一个纤程大概4k。

           2、速度更快,切换和调度不经过操作系统

           3、高效,可以一次启动10+个

目前支持纤程的语言有go、python、lua等

转载地址:http://qqcdi.baihongyu.com/

你可能感兴趣的文章
01Java基础语法-17. do..while循环结构
查看>>
01Java基础语法-18. 各种循环语句的区别和应用场景
查看>>
01Java基础语法-19. 循环跳转控制语句
查看>>
Django框架全面讲解 -- Form
查看>>
socket,accept函数解析
查看>>
今日互联网关注(写在清明节后):每天都有值得关注的大变化
查看>>
”舍得“大法:把自己的优点当缺点倒出去
查看>>
[今日关注]鼓吹“互联网泡沫,到底为了什么”
查看>>
[互联网学习]如何提高网站的GooglePR值
查看>>
[关注大学生]求职不可不知——怎样的大学生不受欢迎
查看>>
[关注大学生]读“贫困大学生的自白”
查看>>
[互联网关注]李开复教大学生回答如何学好编程
查看>>
[关注大学生]李开复给中国计算机系大学生的7点建议
查看>>
[关注大学生]大学毕业生择业:是当"鸡头"还是"凤尾"?
查看>>
[茶余饭后]10大毕业生必听得歌曲
查看>>
gdb调试命令的三种调试方式和简单命令介绍
查看>>
C++程序员的几种境界
查看>>
VC++ MFC SQL ADO数据库访问技术使用的基本步骤及方法
查看>>
VUE-Vue.js之$refs,父组件访问、修改子组件中 的数据
查看>>
Vue-子组件改变父级组件的信息
查看>>