Go 语言中 append 导致内存不足

lightfish-zhang ·
讲了这么多,只讲了问题,没讲到要点 append容量不足,go会生成翻倍容量的slice(1->2, 2->4, ....128->256....) 避免内存重复操作,有几个方法 1. 提前知道大小的, 创建slcie时,指定大小。 2.要for 循环 append大量数据的,可以提前预估大小,创建新slice,并把旧的拷贝过去。然后用新的append。 不知道具体大小,比起直接翻倍,大一点没关系 slice原理官方解释:https://blog.golang.org/go-slices-usage-and-internals
#1
更多评论
代码中的largeOfList是多大?
#2
gopl上面有说。。slice还是个很有意思的东西。
#3