首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
golang 底层探索笔记
火莲华
创建于2026-02-27
订阅专栏
以自己的浅薄之力, 尽可能的剖析golang 底层数据结构的设计, 为未来的自己平铺台阶
暂无订阅
共4篇文章
创建于2026-02-27
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
Go刨根问底系列 sync.Mutex part2 - runtime.sema
sema用于并发访问共享资源场景, 本质是个原子操作的计数器, 加1操作表示唤醒, 减1表示睡眠. 这样子解释可能比较抽象. 我们假设有这样一个场景:<br> 图书馆有n个自习室, 每次来一个人占用
Go刨根问底系列 sync.Mutex part1 - Treap
Treap即 Tree + Heap, 这个数据结构的初衷是为了更有效率地构建一颗比较平衡的二叉搜索树而诞生. 就像前面介绍的, golang的底层源码也有对该数据结构的应用--runtime.sem
Go刨根问底系列 - go cond
前言 go的标准库有个存在感特别低的工具 sync.Cond, 我们一般称为条件变量(cond是condition的缩写). 在我的职业生涯中基本没见过有人使用过这个东西. 从引用的包sync可以得知
Go刨根问底系列 - go channel
此篇笔记主要以自己的浅薄见解去讨论 go channel 数据结构的底层设计, 目前包括: 数据结构, makechan操作, send操作, recv操作, close操作