Junior — Middle
Jak ovlivňuje předání slice s malou nebo velkou velikostí do funkce výkon a využití paměti?
sobes.tech AI
Odpověď od AI
V jazyce Go je slice struktura, která obsahuje ukazatel na pole, délku a kapacitu. Při předání slice funkci se kopíruje právě tato struktura (přibližně 24 bajtů), nikoli celý pole.
- Pro malé slices (několik prvků) kopírování struktury téměř neovlivňuje výkon.
- Pro velké slices se kopíruje pouze struktura, nikoli všechna data, takže náklady na paměť a čas jsou minimální.
Tím je předávání slice efektivní bez ohledu na velikost, protože data se nekopírují, pouze se předává odkaz na pole.