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

网站建设工资一月多少深圳云购网站制作

网站建设工资一月多少,深圳云购网站制作,北京app制作哪家好,站长平台网站本文参考 1.golang的内存管理分配 golang的内存分配仿造Google公司的内存分配方法TCmalloc算法;她会把将内存请求分为两类,大对象请求和小对象请求,大对象为>32K的对象。 在了解golang的内存分配之前要知道什么事虚拟内存,虚拟内存是把磁盘作为全局…

本文参考

1.golang的内存管理分配

golang的内存分配仿造Google公司的内存分配方法TCmalloc算法;她会把将内存请求分为两类,大对象请求和小对象请求,大对象为>=32K的对象。
在了解golang的内存分配之前要知道什么事虚拟内存,虚拟内存是把磁盘作为全局大内存进行管理,内存是磁盘数据的高数缓存区。操作系统内存管理的基本单位是page,页。文章说的内存哦都市虚拟内存。TCmalloc中span是内存管理的基本单位,他是一连续的page组成,golang也是如此。根据不同作用的span就有不同的span的划分,主要说的三部分:
ThreadCache:线程独有的,不能共享,用于小对象的分配(golang里 main叫mCache)
CentralCache:用于小对象的分配,线程之间可以共享了,当ThreadCache内存不够时会从这里进行申请分配,ThreadCache内存超过阈值进行内存回收时会归还给centralCache。(在golang里面叫mCentral)
page heap:用于大对象的分配,线程之间分配,当centralcache内存不足就回从pageheap申请一个span。(golang里叫mheap)

2gotoutine的实现原理:

参考

答:线程是CPU执行调度的最小单位,goroutine是可以说是一种线程的执行流的结构格式,他是由MPG理论三个部分组成
M:是实在运行的内核线程
P:代表processer,go局部代码的调度器,用来调度协程goroutine,维护上下文,go里可以有多个,可通过 GOMAXPROCS()来设置,默认为核心数
G:代表一个goroutine,它有自己的栈,启动一个goroutine很容易:go function 就行,所以每有一个go语句被执行,
runqueue队列就在其末尾加入一个

在这里插入图片描述

3.锁mutex的两种模式(正常模式和1.9版本之后引入的优化模式-饥饿模式)

饥饿模式目的是保证互斥锁的公平性,防止协程饿死
mutex的结构体又个字端叫state,state=1表示加了锁。当state=0的时候表示可以进行抢锁。正常模式下,等待队列中的第一个协程会和自旋状态的协程(没放进等待队列的协程)进行抢锁,一般都是自旋的协程抢到先,就回造成等到队列的饿死状态,永远等不到。饥饿模式,就是严格的先进先出。但是两种可以相互切换的。
什么时机正常模式切饥饿模式:
当一个Goroutine为了获取锁等待的时间超过了1ms
什么时机饥饿切换正常模式:
1.获得锁的协程等待时间小于1ms
2.等待队列为空

4.在GMP模型中Goroutine有几种状态

在这里插入图片描述
idle:空闲状态,刚刚被分配并且还没有被初始化
runnable:没有执行代码,没有栈的所有权,存储在运行队列中(等待被调度)
running:正在运行。可以执行代码,拥有栈的所有权,被赋予了内核线程M和处理器
syscall:正在执行系统调用。拥有栈的所有权,没有执行用户代码,被赋予了内核线程M,但是不在运行队列上
waiting:运行时被阻塞。没有执行用户代码并且不在运行队列上,但是可能存在于channel的等待队列上
dead:没有被使用,没有执行代码,可能有分配的栈

5.什么是golang的热重启?

热重启要实现:旧版本的程序退出之前,需要重启新版本的,老版本可以继续处理没处理完的请求,新的请求打到新版本的上去。
原理是:信号+fork
1.父进程监听重启信号
2.父进程收到重启信号,调用fork()函数,创建子进程,传递子socket描述符给子进程
3.子进程收父进程的socket描述符,并监听scoket描述符,从而新的请求打到子进程
4.子进程启动完成后,父进程处理完旧的请求
5.父进程退出,子进程替代父进程。

http://www.yayakq.cn/news/92131/

相关文章:

  • 网站维护价格哪里可以学做网站
  • 吴江手机网站建设价格国家企业信用信息公示网官方
  • 网站建设永远在路上中国十大装修公司品牌排行榜
  • 江苏做网站公司有哪些北京企业公司
  • 网站开发用什么框架合适手机在线查看html源代码
  • 龙岗营销网站建设大众点评网站团购怎么做
  • 建设银行网站怎么看交易记录关于二手书的网站开发ppt
  • 西安网站建设方案外包wordpress 砍柴网
  • 服务器网站建设维护酒店网站建设方案策划
  • wordpress站点地图无法读取企业网站推广目标
  • 网站基本设置上海网页设计公司兴田德润赞扬
  • 海安网站优化wordpress 移动端 搜索
  • 做网站要用什么服务器吗公司简历模板范文填写
  • 做网站 怎么发布哪个网站的字体做的特别好
  • 摄影师网站建设网站建设的书 推荐
  • 某网站seo策划方案百度搜索引擎怎么弄
  • 2020给个免费网站好人有好报玛卡
  • 微信公众平台小程序在哪南昌官网seo
  • 网站建设制作网络营销公司html5自建网站
  • 网站集约化建设什么意思网站内链建设的方法
  • 网站网页制作电话建设银行快审额度查询网站
  • 用python做的大型网站广西建设网站官网
  • 网站建设移交确认书大连甘井子区教育公共服务平台
  • 做汽车网站销售怎么入手开个网站多少钱一年
  • 做网站网页的成本成都知名建筑公司排名
  • flash网站模板源码网站中的搜索框图标怎么做的
  • 深圳自己做网站 服务器wordpress投稿编辑器
  • 深圳制作网站建设域名到期网站
  • sem和网站建设的关系永久 终身 云服务器
  • 如何免费建立个人网站北京做网站哪里好