是的,转换为字节的一部分将创建该字符串的副本,因此不再引用原始的字符串,并且可以在行下的某处进行GC处理。
作为对此的“证明”(很好,它证明了字节片与原始字符串不共享相同的基础数据):
http://play.golang.org/p/pwGrlETibj
编辑:并证明字节片仅具有必要的长度和容量(换句话说,其容量不等于原始字符串的容量):
http://play.golang.org/p/3pwZtCgtWv
Edit2:您可以清楚地看到内存配置文件发生了什么。在reuseString()中,使用的内存非常稳定。在copyString()中,它增长很快,显示了[]
byte转换完成的字符串的副本。
http://play.golang.org/p/kDRjePCkXq



