Sıcak Yolda Boxing (ARCH5087)
Anahtar go.performance.boxing-in-hot-path · Önem info · Kategori performance
Sıkı bir döngüde değerleri interface{} (any) içine sarmak her yinelemede heap tahsisine yol açar. Sıcak yollarda somut tipleri koruyun.
Hatalı
Bölüm başlığı “Hatalı”func sum(nums []int) int { var total int for _, n := range nums { var boxed any = n total += boxed.(int) } return total}func sum(nums []int) int { var total int for _, n := range nums { total += n } return total}Düzeltme
Bölüm başlığı “Düzeltme”Sıcak döngülerde interface{}/any sarmalamalarını kaldırıp somut tipi doğrudan kullanın.