Loading

摘要: golang select是多 channel 并行的利器 不要拿 switch 和 select 比,根本不是一个东西好嘛,差不少,只是名字稍微有点像 前置操作 golang 对 select 做了一些优化 select 结构体为空 当 select 里面为空的时候会直接 panic 只有一个 c 阅读全文
posted @ 2023-11-22 21:26 _小孟同学 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 在 golang 中,有原子包,能够实现原子操作,在我分析和猜想下,感觉解开了谜团 具体用法不说了,网上一大堆什么 cas,add,load,store 等,主要是底层实现 arm 架构 在 amd 架构下,通过汇编指令加锁来实现 代码在src/runtime/internal/atomic/ato 阅读全文
posted @ 2023-11-22 21:25 _小孟同学 阅读(7) 评论(0) 推荐(0) 编辑
摘要: golang的内存分配思想从 tcmalloc 而来,思路是把对象分配成小对象减少锁的力度或无锁增加效率 定义 golang 内部的页(Page)大小为 8B 空间大小 golang 内部把要申请或使用的空间大小分为了三大类:微对象 (<16B),小对象(16B~32KB),大对象(>32KB), 阅读全文
posted @ 2023-11-22 21:23 _小孟同学 阅读(77) 评论(0) 推荐(0) 编辑