当前位置: 首页 > news >正文

网站app微信三合一互联网广告投放公司

网站app微信三合一,互联网广告投放公司,中国数学外国人做视频网站,bat用什么语言网站开发协程为什么开销小于线程 协程本质上是线程,将调度的代码在用户态重新实现,因为子程序切换不是线程切换而是由程序自身控制,没有线程切换的开销,所以执行效率高。协程通常是纯软件实现的多任务,与CPU和操作系统通常没有…

协程为什么开销小于线程

  • 协程本质上是线程,将调度的代码在用户态重新实现,因为子程序切换不是线程切换而是由程序自身控制,没有线程切换的开销,所以执行效率高。协程通常是纯软件实现的多任务,与CPU和操作系统通常没有关系,跨平台,跨体系结构
  • 协程在执行过程中可以调用别的协程,自己则中途退出执行,之后又从调用别的协程的地方恢复执行。
  • 对于线程而言,其上下文存储在内核栈中。线程的上下文切换必须先进入内核态,这就造成了开销。线程的结构在内核中(就是进程的task_struct,只不过少了一些信息),因此需要进入内核态开销大。因此协程上下文切换开销少

协程的缺点

  • 无法利用多核CPU:协程的本质是单线程(比如一个单线程,多个协程),它不能将一个多核处理器的多个核同时用上,协程需要和进程配合才能用在多核CPU上。
  • 进行阻塞操作(如IO时)会阻塞掉整个程序

协程实现相关概念

函数栈切换

栈帧

栈帧是指为一个函数调用单独分配的那部分栈空间,比如一个运行的函数调用另一个函数,就要进入一个新的栈帧。原来函数的栈帧称为调用者函数的帧,新的栈帧称为被调用函数的帧(当前帧)。被调用者函数运行结束后当前帧全部回收,回到调用者的帧。

函数调用时的esp/ebp

  • esp:栈顶指针
  • ebp:栈底指针
  • 返回地址:指明当B返回的时候,要从A程序的哪个位置继续执行

有栈协程

独立栈

  • 缺点:独立栈往往会更加的浪费内存。因为,我们需要为每一个协程预先分配一个栈空间,但是问题是协程不一定会用完这个栈空间,而那些多出来的栈空间就是被浪费掉了的。而且空间太小也会有爆栈的隐患。
  • 优点:每次切换协程的时候,不需要对栈进行拷贝。(相比于共享栈)

共享栈

  • 优点:节省内存。当协程挂起的时候,依据当前协程使用的栈空间大小来分配内存备份协程的栈内容。
  • 缺点:每次换入换出都有数据拷贝的过程

http://www.shuangfujiaoyu.com/news/3419.html

相关文章:

  • 制作小公司网站教程网站设计与制作公司
  • 怎么在自己的网站上做链接宁波seo费用
  • 2018威胁网站检测平台建设学历提升哪个教育机构好一些
  • pc 移动 网站开发销售crm客户管理系统
  • 用微魔方做的网站一定要加360搜索引擎入口
  • 建新网站开发流程图申请自媒体平台注册
  • 网站后台怎么添加模板网络推广员的日常工作
  • 深圳网站制作必荐祥奔科技东莞做网站最好的是哪家
  • erlang做网站优势怎么进行网站推广
  • 做游戏网站选服务器网页友情链接
  • 织梦网站搬家教程如何优化网站排名
  • 网站制作中山湖人队最新消息
  • 莆田网站制作计划傻瓜式自助建站系统
  • dobby主题wordpressseo关键字排名优化
  • 酒店预订网站建设查询网域名查询
  • 中山市建设局网站窗口电话号码百度快速seo优化
  • php网站伪静态独立站怎么搭建
  • 百度首页的ip地址百度seo快速排名
  • 大浪做网站公司东莞做网站的公司吗
  • 新手如何涨1000粉seo网站快速整站优化技术
  • 个人如何做网站软件广州优化疫情防控举措
  • 网站底部版权怎么做品牌宣传推广方案
  • wordpress jquery 无法seo网站自动发布外链工具
  • 淮安建立公司网站流程厦门seo推广优化
  • 古典网站建设公司站长工具查询官网
  • 黄页软件推荐鼓楼网站seo搜索引擎优化
  • 是用cms还是直接用语言写网站花西子网络营销案例分析
  • flash网站模板源码石家庄seo优化公司
  • 注册一个做网站的公司好网络公司品牌推广
  • 怎么样建立自己的视频网站本周热点新闻事件