Go语言中的垃圾回收器(Garbage Collector)是自动管理内存的机制,用于回收不再使用的内存。垃圾回收器会自动检测不再使用的对象,并释放其占用的内存空间。
案例
使用垃圾回收创建一个大量的临时对象:
package main
import (
"fmt"
"runtime"
"time"
)
func createObjects() {
for i := 0; i < 1000000; i++ {
_ = make([]byte, 1024)
}
}
func main() {
createObjects()
time.Sleep(time.Second) // 等待垃圾回收器执行
var stats runtime.MemStats
runtime.ReadMemStats(&stats)
fmt.Println("Allocated memory:", stats.Alloc)
}
打印结果: Allocated memory: 77354
在上述代码中,我们通过循环创建了大量的临时对象。然后,我们使用time.Sleep函数等待垃圾回收器执行。最后,我们使用runtime.ReadMemStats函数读取内存统计信息,并打印出已分配的内存大小。
通过使用垃圾回收器,我们可以自动管理内存,避免手动释放不再使用的对象。垃圾回收器会在适当的时机自动回收不再使用的内存,从而提高程序的性能和可靠性。
THE END
暂无评论内容