Kaynak Serbest Bırakılmamış (ARCH5080)
Anahtar go.performance.disposable-not-disposed · Önem error · Kategori performance
Close metodu olan bir kaynak oluşturulup serbest bırakılmazsa sızıntı oluşur. Oluşturduktan hemen sonra defer x.Close() kullanın.
Hatalı
Bölüm başlığı “Hatalı”func read(path string) ([]byte, error) { f, err := os.Open(path) if err != nil { return nil, err } return io.ReadAll(f)}func read(path string) ([]byte, error) { f, err := os.Open(path) if err != nil { return nil, err } defer f.Close() return io.ReadAll(f)}Düzeltme
Bölüm başlığı “Düzeltme”Kaynağı oluşturduktan hemen sonra defer x.Close() ekleyin.