shitaibin.github.io icon indicating copy to clipboard operation
shitaibin.github.io copied to clipboard

Go内存分配那些事,就这么简单! | 大彬 LIB

Open Shitaibin opened this issue 6 years ago • 6 comments

http://lessisbetter.site/2019/07/06/go-memory-allocation/

新老朋友好久不见,我是大彬,这篇文章准备了很久,不是在拖延,而是中间做了一些其他事情,耽搁了一些。 这篇文章主要介绍Go内存分配和Go内存管理,会轻微涉及内存申请和释放,以及Go垃圾回收。 从非常宏观的角度看,Go的内存管理就是下图这个样子,我们今天主要关注其中标红的部分。 友情提醒: 文章有点长,建议先收藏,后阅读,绝对是学习内存管理的好资料。 本文基于go1.11.2,不同版本Go的内存

Shitaibin avatar Jul 12 '19 00:07 Shitaibin

good writing!

foobar avatar Jul 16 '19 04:07 foobar

@foobar thanks

Shitaibin avatar Jul 17 '19 00:07 Shitaibin

max waste的计算,应该是最差场景下的内存浪费。 比如8字节的span,最差case是每次分配1字节,会有7/8的浪费。而16理解的最坏场景是每次分配9字节,浪费了7/17,即43.75%。

foobar avatar Jul 23 '19 14:07 foobar

@foobar max waste的计算,应该是最差场景下的内存浪费。 比如8字节的span,最差case是每次分配1字节,会有7/8的浪费。而16理解的最坏场景是每次分配9字节,浪费了7/17,即43.75%。

对,是这么回事,加进来了:http://lessisbetter.site/2019/07/06/go-memory-allocation/#%E5%85%B6%E4%BB%96%E8%BD%AC%E6%8D%A2%E8%A1%A8%E5%AD%97%E6%AE%B5

Shitaibin avatar Jul 25 '19 09:07 Shitaibin

如果每找到再从emtpy搜索满足条件的span 错别字了

DukeAnn avatar Sep 16 '19 08:09 DukeAnn

@DukeAnn 如果每找到再从emtpy搜索满足条件的span 错别字了

OK,谢谢

Shitaibin avatar Sep 17 '19 09:09 Shitaibin