像 buf = buf[n:]
这样的 Golang 字符串切片操作会导致底层字节数组内存泄漏吗?
如果是,那么有没有可能获取有关底层字节数组的任何信息(例如容量或基础内存地址),以便验证泄漏情况?
请参考下面的示例代码:
var buf string
func push(s string) {
buf += s
if len(buf) > 3 {
buf = buf[len(buf)-3:] // can this line leak memory in underlying byte array?
}
fmt.Printf("buf=[%v]\n", buf)
}