为了账号安全,请及时绑定邮箱和手机立即绑定

golang 闭包会内存泄漏吗?

golang 闭包会内存泄漏吗?

Go
互换的青春 2022-11-08 14:36:21
假设我有这个闭包函数package maintype A struct {    Name string}func main() {    s := func(name string) *A {        return &A{            Name: name,        }    }("checkmate")    s.Name = "bbb"}我已经用基准和 gcflags 进行了测试,这就是结果cpu: Intel(R) Core(TM) i3-10110U CPU @ 2.10GHzBenchmarkMain-4         1000000000               0.4877 ns/op          0 B/op          0 allocs/op去构建-gcflags“-m”./main.go:8:7: can inline main.func1./main.go:7:6: can inline main./main.go:12:3: inlining call to main.func1./main.go:12:3: &A{...} does not escape这仍然是内存安全的吗?或者我的内存分配检查可能缺少一些东西?
查看完整描述

1 回答

?
慕斯709654

TA贡献1840条经验 获得超5个赞

不,闭包不会泄漏内存。



查看完整回答
反对 回复 2022-11-08
  • 1 回答
  • 0 关注
  • 144 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信