首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
go原理
订阅
路过的懒潴
更多收藏集
微信扫码分享
微信
新浪微博
QQ
16篇文章 · 0订阅
Go语言大厂编程 Channel 管道通讯
不要通过共享内存来通信,而要通过通信来实现内存共享。 底层的数据结构 底层数据结构需要看 hchan 源码: buf 指向底层循环数组,只有缓冲型的 channel 才有。 sendx,recvx 均
Golang 的 协程调度机制 与 GOMAXPROCS 性能调优
Golang 简称 Go,Go 的协程(goroutine) 和我们常见的线程(Thread)一样,拥有其调度器。 全局G任务队列会和各个本地G任务队列按照一定的策略互相交换。没错,就是协程任务交换 如果还有空闲的P,则创建一个M 绑定该 P ,注意!这里,P 此前必须还没绑定…
GO 中 slice 的实现原理
这是我参与更文挑战的第 17 天,活动详情查看: 更文挑战 GO 中 slice 的实现原理 上次我们分享的字符串相关的内容咱回顾一下 分享了字符串具体是啥 GO 中字符串的特性,为什么不能被修改 字
GO 中 Chan 实现原理分享
这是我参与更文挑战的第 19 天,活动详情查看: 更文挑战 [TOC] GO 中 Chan 实现原理分享 嗨,我是小魔童哪吒,还记得咱们之前分享过GO 通道 和sync包的使用吗?咱们来回顾一下 分享
GO 中 defer的实现原理
这是我参与更文挑战的第 20 天,活动详情查看: 更文挑战 GO 中 defer的实现原理 我们来回顾一下上次的分享,分享了关于 通道的一些知识点 分享了 GO 中通道是什么 通道的底层数据结构详细解
GO 中 map 的实现原理
这是我参与更文挑战的第 18 天,活动详情查看: 更文挑战 GO 中 map 的实现原理 嗨,我是小魔童哪吒,我们来回顾一下上一次分享的内容 分享了切片是什么 切片和数组的区别 切片的数据结构 切片的
GO 中 string 的实现原理
GO 中 string 的实现原理 上次我们分享的内容咱回顾一下 分享了ETCD的简单单点部署,ETCD 使用到的包安装,以及会遇到的问题 ETCD 的设置 和 获取KEY ETCD 的WATCH 监
Go语言map底层实现
1. 数据结构及内存管理 2. 创建map map的创建比较简单,在参数校验之后,需要找到合适的B来申请桶的内存空间 设置哈希种子 hash0,接着便是穿件hmap这个结构,以及对它的初始化。 3.
Go内存管理(四)什么情况下变量分配到堆中
栈内存:一般由系统申请和释放。比如函数的入参、局部变量、返回值等 堆内存:一般由程序员申请和释放(malloc/free new/delete等)。使用malloc关键字申请的内存就在堆内存,申请和释放要成对使用,否则会造成内存泄漏。对于Golang系统会自动回收已经不使用的堆…
Go内存原理(六)-GC源码分析
GC会扫描哪些地方存有指针,首先变量要么分配到栈中,要么分配在在堆中。我们在之前的Go语言内存管理章节中学习到了堆对应的bitmap每2bit会指出arena哪些地址存储了对象,对象是否包含指针;还有我们的mcentral中,也会分为包含指针的span(noscan),不包含指…