gpt4 book ai didi

go - 当指向结构的指针被替换时,GC 的行为如何

转载 作者:数据小太阳 更新时间:2023-10-29 03:37:35 26 4
gpt4 key购买 nike

我正在学习 Go,并且正在阅读图书馆中的示例。我发现一些示例正在使用:

type MyType struct {
Code string
//...
}


func main() {
myType := &MyType{...}
//...
myType = &MyType{...}
}

基本上他们是在重用变量。我知道 &MyType{..} 返回一个指针,稍后我可以替换该指针。之前指向的内存会发生什么。 GC 会回收该内存还是我会浪费该内存。也许这是一个愚蠢的问题,我什么都不担心,但我正在尝试学习 Go 来构建性能 API :)

最佳答案

内存将被垃圾收集器回收。

如果你想替换结构你可以这样做:

func main() {
myType := &MyType{...}
//...
*myType = MyType{...}
}

虽然差异可能可以忽略不计。

关于go - 当指向结构的指针被替换时,GC 的行为如何,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34750679/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com