Hogyan azonosítható egy eljárás közeli vagy távoliként?
A közeli és távoli függvények közötti különbség csak akkor szignifikáns, ha a defer utasítást a pánik kezelésére vagy az erőforrások bezárására használjuk a függvény végén. Ha egy defer utasítással találkozik, a Go futási környezet egy változót egy olyan verembe helyez, amely a halasztás kezeléséért felelős függvényt tárolja. Ha a halasztott függvény közel van, akkor a változó ugyanabban a Go csomagban tárol egy mutatót a függvényre. Ha a késleltetett függvény távoli, akkor a változó egy mutatót tárol egy csonkfüggvényre, amely a távoli függvényt csomagközi híváson keresztül hívja meg.
A csomagok közötti hívások drágábbak, mint a csomagon belüli hívások, ezért általában előnyös a közeli funkciók használata, ha lehetséges. Ezt úgy teheti meg, hogy a kódot csomagokba rendezi oly módon, hogy az együtt használandó függvények ugyanabban a csomagban legyenek meghatározva.