首页 > 其他分享 >GO语言学习笔记

GO语言学习笔记

时间:2024-05-08 10:49:08浏览次数:12  
标签:marking 语言 barrier 标记 笔记 屏障 GO stw

导图:GO语言四大模块

 

1.调度器

2.netpoll

3.内存管理

4.GC 

垃圾回收算法有很多,主要有:引用计数、标记-清除、分代收集

口述,go gc 的原理 三色标记发+混合写屏障 思路 尽量减少stw的时间,

1.只在开始标记阶段和标记结束阶段使用stw,
2.标记阶段采用写屏障,将新建和修改的放入单独的marking队列。
3.标记结束阶段再次扫描marking队列,关闭写屏障
 

什么是内存屏障?

垃圾收集中的屏障技术更像是一个钩子方法,它是在用户程序读取对象、创建新对象以及更新对象指针时执行的一段代码,根据操作类型的不同,我们可以将它们分成读屏障(Read barrier)和写屏障(Write barrier)两种,因为读屏障需要在读操作中加入代码片段,对用户程序的性能影响很大,所以编程语言往往都会采用写屏障保证三色不变性。写屏障是当对象之间的指针发生改变时调用的代码片段。

 

标签:marking,语言,barrier,标记,笔记,屏障,GO,stw
From: https://www.cnblogs.com/zendu/p/18179164

相关文章

  • Golang gin 框架使用 MongoDB 进行多表联查,以及分组查询
    主要针对gin框架中如何使用假设两张表order表{"_id":ObjectId("65aa2b2203abce203bbe3c7a"),"name":"骆驼祥子","route":"/test/v2/desktop","bookshelf":"03"}orderRemark表{......
  • 【文化课学习笔记】【物理】功与能
    【物理】功与能功基础概念定义一个物体在力的作用下,沿力的方向,通过一段距离(位移),则称这个力做了功。公式功的定义式:\[W=Fx\]这里的\(x\)指的是物体沿力的方向上发生的位移。由于力\(F\)和位移\(x\)都是矢量,所以得到的功\(W\)是标量。注意:虽然\(W\)是标量,但是......
  • QBXT五一集训DAY4笔记
    \(Day\)\(4\)图论图论主要分为\(4\)个方面1.最短路2.二分图匹配3.生成树4.强连通(这个超纲了,不讲)在介绍完理论知识后,我们会逐一讨论它们图图是由点和边构成的边又分为有向边和无向边,因此图可以分为有向图和无向图无向图的度指的是一个点连了多少条边有向图的入度指的......
  • 学习笔记:FFT与拉格朗日插值
    多项式的表示形式系数表示与点值表示假设\(f(x)\)是一个\(n\)次多项式,则\(f(x)\)的系数表示为\(f(x)=a_nx^n+a_{n-1}x^{n-1}+\cdots+a_0\)\(f(x)\)的点值表示为\((x_0,f(x_0)),\(x_1,f(x_1)),\dots,(x_n,f(x_n))\),其中\(\foralli\neqj,\x_i......
  • 多语言 JDBC SQL 发送
    多语言JDBCSQL发送记录各个语言使用JDBC发送SQL的代码片段。Pythonimportjaydebeapi#pipinstalljaydebeapi#JDBC驱动类名driver='com.mysql.jdbc.Driver'#数据库连接URLurl='jdbc:mysql://hostname:port/databasename?characterEncoding=UTF-8&serverT......
  • mit6.828 - lab2笔记
    目标:重点学习内存管理的相关知识,包括内存布局、页表结构、页映射任务:完成内存管理的相关代码lab2中,完全可以跟着实验手册的节奏走,逐步完善内存管理的代码。环境准备:实验2包含以下新的源文件:inc/memlayout.hkern/pmap.ckern/pmap.hkern/kclock.hkern/kclock.cmemlay......
  • Playwright Python 在Linux上跑,默认语言是英文的坑
    背景:在Windows上调试之后,在Linux上跑,发现如下保存playwright._impl._errors.TimeoutError:Locator.click:Timeout30000msexceeded.Calllog:waitingforget_by_text("账号密码登录")然后各种找,找了一圈,发现一个灵感是截图page.screenshot(path='c.png',full_page=True)......
  • 程序员修炼之道阅读笔记2
    在工作中我们总会遇到难以解决的问题,这本书给我提供了一个思路。最重要的不是你在盒子里思考,还是在盒子外面思考,而是找到盒子-确定真正的约束,详细一点的解释就是面对棘手的问题时,列出所有在你面前的可能途径,不要排除任何东西,不管它看起来有多正确或微不足道。然后逐一检查每一项。......
  • 程序员修炼之道阅读笔记3
    读完《程序员修炼之道:从小工到专家》的第三章和第四章后,我不禁被这本书所揭示的思维方式和工作方法所震撼。这两章的内容围绕着软件开发过程中的团队合作、沟通和管理等方面展开,不仅直指开发中的痛点,还给出了实用的解决方案和建议。在第三章中,作者强调了团队中的每个成员都要成......
  • 小程序开发笔记
     官方文档:https://developers.weixin.qq.com/miniprogram/dev/framework/quickstart/code.html#JSON-%E9%85%8D%E7%BD%AEapp.json配置文件节点说明 https://developers.weixin.qq.com/miniprogram/dev/framework/config.html1.pages  代表页面路由,"pages/index/index",新......