Sobes.tech
Middle+

Da li je moguće eksplicitno pozvati čišćenje smeća u Go?

sobes.tech АИ

Одговор од АИ

U Go jeziku, možete eksplicitno pozvati sakupljač smeća koristeći funkciju runtime.GC(). Ovo forsira pokretanje procesa sakupljanja smeća, ali se obično u realnim aplikacijama ne preporučuje često to raditi, jer Go efikasno upravlja memorijom samostalno.

Primer:

package main

import (
    "fmt"
    "runtime"
)

func main() {
    var m runtime.MemStats
    runtime.ReadMemStats(&m)
    fmt.Printf("Pre GC: %d bajtova\n", m.Alloc)

    runtime.GC() // forsni poziv sakupljača smeća

    runtime.ReadMemStats(&m)
    fmt.Printf("Posle GC: %d bajtova\n", m.Alloc)
}

Koristite runtime.GC() samo u izuzetnim slučajevima, kada zaista morate da kontrolišete trenutak sakupljanja smeća.