Sobes.tech
Junior — Middle

Կարող եք բացատրել, թե ինչպես է աշխատում MRC մեխանիզմը?

sobes.tech AI

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

MRC (Անհատական Հղումների Հաշվարկ) — դա հիշողության կառավարման մեխանիզմ է iOS-ում, որտեղ ծրագրավորողը ինքն է պատասխանատու օբյեկտների հղումների հաշվարկի համար:

Աշխատելու սկզբունքը՝

  • Յուրաքանչյուր օբյեկտ ունի հղումների հաշվիչ:
  • Օբյեկտի ստեղծման կամ հանձման ժամանակ, հաշվիչը մեծանում է (retain):
  • Հղումի ազատման ժամանակ, հաշվիչը նվազում է (release):
  • Երբ հաշվիչը հասնում է զրոյի, օբյեկտը ոչնչացվում է:

Օրինակ Objective-C-ում՝

NSObject *obj = [[NSObject alloc] init]; // հաշվիչ = 1
[obj retain]; // հաշվիչ = 2
[obj release]; // հաշվիչ = 1
[obj release]; // հաշվիչ = 0, օբյեկտը ջնջվում է

Կարևոր է ձեռքով կանչել retain և release, որպեսզի խուսափեք հիշողության արտահոսքներից կամ վաղաժամջ վերացմանից։ Մոդեռն iOS նախագծերում հաճախ օգտագործվում է ARC (Ավտոմատ Հղումների Հաշվարկ), որը ավտոմատացնում է այս գործընթացը։