Когда использовать pointer receiver?

Middle
724 просмотров
AFK Offer AI

Pointer receiver нужен, когда метод изменяет состояние структуры — иначе изменения потеряются. Также его используют для больших структур, чтобы не копировать их при каждом вызове. Ещё одно правило: если хотя бы один метод типа имеет pointer receiver, все остальные тоже должны — для консистентности и чтобы не было проблем с method set. По сути, value receiver оправдан только для маленьких immutable типов вроде Point{X, Y}.

Следующий вопрос

Как работает readiness vs liveness probe?