Sobes.tech
Junior — Middle

Ի՞նչ դեպքերում և երբ է տեղի ունենում համակարգում ավտոմատ հիշողության ազատում։

sobes.tech AI

Պատասխան AI-ից

iOS-ում ավտոմատ հիշողության ազատումը տեղի է ունենում ARC (Ավտոմատ Հղումային Հաշվարկ) մեխանիզմի շնորհիվ: ARC ավտոմատ կերպով հետևում է օբյեկտի հղումների թվին և ազատում է հիշողությունը, երբ այլ ուժեղ հղումներ չեն մնում օբյեկտին:

Երբ տեղի է ունենում հիշողության ազատում՝

  • Երբ օբյեկտի հղումների հաշվիչը իջնում է զրոյի, օբյեկտը ոչնչացվում է և հիշողությունը ազատվում:
  • Դա տեղի է ունենում ավտոմատ կերպով փոփոխականի տեսանելիությունից դուրս գալու կամ nil հանձնելու ժամանակ:

Կարևոր է խուսափել ցիկլային հղումներից (retain cycles), հակառակ դեպքում օբյեկտները չեն ազատվի, ինչը կարող է հանգեցնել հիշողության լափումների։