Junior — Middle
Оё метавонед шарҳ диҳед, ки дар контексти кор бо хотира дар барномасозӣ, таҳлили Escape чӣ маъно дорад?
sobes.tech AI
Ҷавоб аз AI
Таҳлили фирор — ин раванд дар компиляторҳо (масалан, дар Go) мебошад, ки муайян мекунад, ки дар куҷо дар ёддошт объект бояд нигоҳ дошта шавад: дар стек ё дар хати.
Агар объект "аз" функсия "набарояд" (яъне, онро "пӯшад"), пас онро дар стек ҷойгир кардан мумкин аст — ин тезтар ва бехатартар аст, зеро ёддошт автоматӣ ҳангоми баромадан аз функсия озод мешавад.
Агар, баръакс, объект "функсияро пӯшад" (масалан, аз он баргардонида мешавад ё дар тағйирёбандаи глобалӣ нигоҳ дошта мешавад), пас бояд дар хати ҷойгир карда шавад, то дарозтар аз вақти даъвати функсия зиндагӣ кунад.
Масалан дар Go:
func foo() *int {
x := 10
return &x // x "функсияро пӯшад", бинобар ин дар хати ҷудо карда мешавад
}
Таҳлили фирор кӯмак мекунад, ки истифодаи ёддоштро оптималӣ гардонад ва иҷрои барнома беҳтар шавад.