Middle+
Може ли явно да се извика принудително почистване на боклука в Go?
sobes.tech AI
Отговор от AI
В Go можете явно да извикате събирача на боклуци с помощта на функцията runtime.GC(). Това принуждава процеса на събиране на боклуци, но обикновено в реални приложения не се препоръчва да го правите често, тъй като Go ефективно управлява паметта самостоятелно.
Пример:
package main
import (
"fmt"
"runtime"
)
func main() {
var m runtime.MemStats
runtime.ReadMemStats(&m)
fmt.Printf("Преди GC: %d байта\n", m.Alloc)
runtime.GC() // принудително извикване на събирача на боклуци
runtime.ReadMemStats(&m)
fmt.Printf("След GC: %d байта\n", m.Alloc)
}
Използвайте runtime.GC() само в изключителни случаи, когато наистина трябва да контролирате момента на събиране на боклуци.