Sobes.tech
Junior — Middle

Kako utječe prenošenje slice-a male ili velike veličine u funkciju na performanse i korišćenje memorije?

sobes.tech АИ

Одговор од АИ

U Go-u, slice je struktura koja sadrži pokazivač na niz, dužinu i kapacitet. Kada se slice prosledi funkciji, kopira se tačno ta struktura (otprilike 24 bajta), a ne ceo niz.

  • Za male slice-ove (nekoliko elemenata), kopiranje strukture gotovo da ne utiče na performanse.
  • Za velike slice-ove, kopira se samo struktura, a ne svi podaci, tako da su troškovi memorije i vremena minimalni.

Na ovaj način, prosleđivanje slice-a je efikasno bez obzira na veličinu, jer se podaci ne kopiraju, već se prosleđuje referenca na niz.