Junior — Middle
Оё метавонед шарҳи кунед, ки механизми MRC чӣ гуна кор мекунад?
sobes.tech AI
Ҷавоб аз AI
МРЦ (Ҳолисан Референс Саноат) — ин механизм идоракунии хотира дар iOS мебошад, ки дар он барномасоз сам responsibility барои ҳисоб кардани истинодҳо ба объектҳоро дорад.
Принсипи кор:
- Ҳар як объект дорои ҳисобкунаки истинодҳо мебошад.
- Ҳангоми эҷод ё таъин кардани объект, ҳисобкунак меафзояд (
retain). - Ҳангоми озод кардани истинод, ҳисобкунак кам мешавад (
release). - Вақте ки ҳисобкунак ба сифр мерасад, объект нобуд мешавад.
Масалан дар Objective-C:
NSObject *obj = [[NSObject alloc] init]; // ҳисобкунак = 1
[obj retain]; // ҳисобкунак = 2
[obj release]; // ҳисобкунак = 1
[obj release]; // ҳисобкунак = 0, объект нест карда мешавад
Муҳим аст, ки ба таври дастӣ retain ва release-ро даъват кунед, то аз ҷорӣ шудани сӯроғи хотира ё нобудшавии пеш аз вақтии объектҳо пешгирӣ кунед. Дар лоиҳаҳои муосири iOS, бештар истифода мешавад ARC (Ҳисобкунии автоматии истинодҳо), ки ин равандро автоматӣ мекунад.