Sobes.tech
Middle+

Lehet-e kifejezetten hívni a szemétgyűjtést Go-ban?

sobes.tech MI

Válasz az MI-től

Go nyelvben explicit módon meghívhatod a szemétgyűjtőt a runtime.GC() függvény segítségével. Ez erőszakosan elindítja a szemétgyűjtési folyamatot, de valódi alkalmazásokban általában nem ajánlott gyakran használni, mivel a Go hatékonyan kezeli a memóriát önállóan.

Példa:

package main

import (
    "fmt"
    "runtime"
)

func main() {
    var m runtime.MemStats
    runtime.ReadMemStats(&m)
    fmt.Printf("Gyűjtés előtt: %d bájt\n", m.Alloc)

    runtime.GC() // erőltetett szemétgyűjtés

    runtime.ReadMemStats(&m)
    fmt.Printf("Gyűjtés után: %d bájt\n", m.Alloc)
}

Csak kivételes esetekben használd a runtime.GC()-t, amikor valóban kontrollálni akarod a szemétgyűjtés időpontját.