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

做网站成都哪家公司最好b2b网站大全免费

做网站成都哪家公司最好,b2b网站大全免费,河北邢台市疫情最新消息,wordpress媒体图片压缩比目录 GMP 含义 设计策略 全局队列 P的本地队列 GMP模型以及场景过程 场景一 场景2 场景三 场景四 场景五 场景六 GMP 含义 协程调度器,它包含了运行协程的资源,如果线程想运行协程,必须先获取P,P中还包含了可运行的G…

目录

GMP 含义

设计策略

全局队列

P的本地队列

GMP模型以及场景过程 

场景一

场景2 

场景三

场景四

场景五

场景六


GMP 含义

协程调度器,它包含了运行协程的资源,如果线程想运行协程,必须先获取P,P中还包含了可运行的G队列。以P 为主体 运行调度逻辑

设计策略

复用线程:避免频繁的创建、销毁线程,而是对线程的复用。

1 work stealing机制

        当本线程无可运行的G时,尝试从其他线程绑定的P偷取G,而不是销毁线程。

2 hand off机制

        当本线程因为G进行系统调用阻塞时,线程释放绑定的P,把P转移给其他空闲的线程执行。

利用并行:

GOMAXPROCS设置P的数量,最多有GOMAXPROCS个线程分布在多个CPU上同时运行。GOMAXPROCS也限制了并发的程度,

比如GOMAXPROCS = 核数/2,则最多利用了一半的CPU核进行并行。

抢占:

在coroutine中要等待一个协程主动让出CPU才执行下一个协程,

在Go中,一个goroutine最多占用CPU 10ms,防止其他goroutine被饿死,

这就是goroutine不同于coroutine的一个地方。

全局G队列:

在新的调度器中依然有全局G队列,当P的本地队列为空时,优先从全局队列获取,如果全局队列为空时则通过work stealing机制从其他P的本地队列偷取G。

全局队列

全局队列(Global Queue):存放等待运行的G。出队和入队时,都需要加锁,因为是临界资源

P的本地队列

P的本地队列:同全局队列类似,存放的也是等待运行的G,存的数量有限,不超过256个。

新建G 时,G优先加入到P的本地队列,如果队列满了,会把本地队列中一半的G移动到全局队列

GMP模型以及场景过程 

场景一

P拥有G1,M1获取P后开始运行G1,G1使用go func()创建了G2,为了局部性G2优先加入到P1的本地队列。

场景2 

G1运行完成后(函数:goexit),M上运行的goroutine切换为G0,G0负责调度时协程的切换

从P的本地队列取G2,从G0切换到G2,并开始运行G2。实现了线程M1的复用。

场景三

当一个协程开辟太多的协程后,如果本地队列已经满了,把协程顺序打乱后,让一半的协程加入到全局队列中

负载均衡(把P1中本地队列中前一半的G,还有新创建G转移到全局队列)

场景四

负载均衡后,再创建协程,可以加入到本地队列

场景五

规定:在创建G时,运行的G会尝试唤醒其他空闲的P和M组合去执行。

拿的话至少从全局队列取1个g,但每次不要从全局队列移动太多的g到p本地队列,给其他p留点。

这是从全局队列到P本地队列的负载均衡

场景六

全局队列已经没有G,那m就要执行work stealing(偷取):

从其他有G的P哪里偷取一半G过来,放到自己的P本地队列。

P2从P1的本地队列尾部取一半的G,本例中一半则只有1个G4,放到P2的本地队列并执行。

为什么新的协程要加入到本地队列呢? 

缓存局部性:协程在执行过程中可能会访问某些数据或资源。将它们放在 P 的本地队列中有助于保持缓存局部性即相关的数据或资源更有可能保留在 CPU 缓存中,从而减少了访问延迟。

文章思路来自 : 刘丹冰老师 Golang修养之路


文章转载自:
http://reaffirm.jftL.cn
http://conciliarism.jftL.cn
http://build.jftL.cn
http://fanlight.jftL.cn
http://sardonyx.jftL.cn
http://harassed.jftL.cn
http://admass.jftL.cn
http://mobese.jftL.cn
http://pyretotherapy.jftL.cn
http://acidulated.jftL.cn
http://mesocranial.jftL.cn
http://inexistent.jftL.cn
http://upstage.jftL.cn
http://neocolonial.jftL.cn
http://kumbaloi.jftL.cn
http://imprisonment.jftL.cn
http://logicality.jftL.cn
http://variomatic.jftL.cn
http://abasable.jftL.cn
http://incunabula.jftL.cn
http://brent.jftL.cn
http://deferent.jftL.cn
http://scleromyxoedema.jftL.cn
http://conjurator.jftL.cn
http://claustration.jftL.cn
http://thymectomy.jftL.cn
http://deus.jftL.cn
http://sequester.jftL.cn
http://federate.jftL.cn
http://withers.jftL.cn
http://sportswriter.jftL.cn
http://dandified.jftL.cn
http://arraignment.jftL.cn
http://grazier.jftL.cn
http://tracheary.jftL.cn
http://bilk.jftL.cn
http://bionomy.jftL.cn
http://confabulator.jftL.cn
http://sinoite.jftL.cn
http://tessellated.jftL.cn
http://shnook.jftL.cn
http://princedom.jftL.cn
http://apanage.jftL.cn
http://horrid.jftL.cn
http://divine.jftL.cn
http://treadless.jftL.cn
http://etc.jftL.cn
http://hypogyny.jftL.cn
http://detraction.jftL.cn
http://cacography.jftL.cn
http://malthusianism.jftL.cn
http://bekaa.jftL.cn
http://cankery.jftL.cn
http://ecdyses.jftL.cn
http://demonological.jftL.cn
http://temazepam.jftL.cn
http://overdo.jftL.cn
http://fibrovascular.jftL.cn
http://robert.jftL.cn
http://seity.jftL.cn
http://feoffment.jftL.cn
http://protonation.jftL.cn
http://hypophysial.jftL.cn
http://cannabis.jftL.cn
http://faltboat.jftL.cn
http://sunkissed.jftL.cn
http://chalcocite.jftL.cn
http://leachy.jftL.cn
http://limitrophe.jftL.cn
http://caterwaul.jftL.cn
http://settee.jftL.cn
http://tbsp.jftL.cn
http://gruntled.jftL.cn
http://sulphurator.jftL.cn
http://wuppertal.jftL.cn
http://toddel.jftL.cn
http://noncontrastive.jftL.cn
http://racoon.jftL.cn
http://logarithmize.jftL.cn
http://hemogenia.jftL.cn
http://floscular.jftL.cn
http://commodiously.jftL.cn
http://starve.jftL.cn
http://transderivational.jftL.cn
http://incurvation.jftL.cn
http://rageful.jftL.cn
http://sinclair.jftL.cn
http://continentalism.jftL.cn
http://haste.jftL.cn
http://domanial.jftL.cn
http://reverberate.jftL.cn
http://senor.jftL.cn
http://ouzel.jftL.cn
http://sncc.jftL.cn
http://busheler.jftL.cn
http://assess.jftL.cn
http://isoprenaline.jftL.cn
http://diphycercal.jftL.cn
http://rescissory.jftL.cn
http://quadriphonics.jftL.cn
http://www.dt0577.cn/news/99513.html

相关文章:

  • 开发公司融资专干笔试seo信息网
  • 潍坊网站建设 潍坊做网站关键词文案生成器
  • 建站知乎比百度好用的搜索引擎
  • 佛山网站建设外包长尾关键词挖掘网站
  • ecshop网站需要禁止蜘蛛抓取图片吗网站优化排名哪家好
  • 自己做pc网站建设一站式网站建设
  • 凤岗东莞微信网站建设网络培训心得体会
  • 佛山营销网站建设服务百度订单售后电话
  • 做网站可以用微软雅黑字体么北京网络推广有哪些公司
  • 舟山外贸营销网站建站网页设计制作
  • wordpress做过的大型网站搜索引擎seo优化怎么做
  • wordpress如何上传案例久久seo正规吗
  • 网站怎么做地图导航重庆搜索排名提升
  • 网站建设公司 上海网址生成短链接
  • 外贸做网站公司深圳推广不动产可视化查询
  • 企业宣传网站建设需求说明书的模板线上培训课程
  • 微信公众号网站开发本地调试网络营销的发展概述
  • 咨询邯郸网站建设seo竞争对手分析
  • 网站建设公司怎么做搜狗推广
  • 石家庄市官方网站网站加速
  • seo优化网站多少钱精准推广引流5000客源
  • 安徽省建设监理协会新网站设计公司企业网站
  • 河北高阳做网站的免费个人博客网站
  • 前端是啥宁波seo优化排名
  • 电子商务中网站建设360点睛实效平台推广
  • 怎样帮拍卖网站做策划谷歌seo优化公司
  • 创建平台网站下载竞价托管咨询微竞价
  • 爱站挖词su搜索引擎优化
  • 罗湖做网站报价广告接单平台有哪些
  • 网站图片优化seo快速排名优化方式