Sobes.tech
Junior — Middle

Ի՞նչ է հիշողության կառավարման ժամանակ թույլ և ոչ սեփականության հղումների օգտագործման խնդիրն ու գործառույթը։

sobes.tech AI

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

Ճկուն (weak) և ոչ սեփական (unowned) հղումները օգտագործվում են օբյեկտների հիշողության մեջ պահման ցիկլերը կանխելու համար, որոնք կարող են հանգեցնել արտահոսքների:

  • Ճկուն հղումներ (weak) չեն ավելացնում օբյեկտի հղումների հաշվիչը և ավտոմատ կերպով զրոյվում են, երբ օբյեկտը ջնջվում է: Սա օգտակար է, երբ հղումը կարող է դառնալ անվավեր և անհրաժեշտ է խուսափել ազատված հիշողությանը մուտք գործելուց:

  • Ոչ սեփական հղումներ (unowned) նույնպես չեն ավելացնում հղումների հաշվիչը, բայց ենթադրում են, որ օբյեկտը գոյություն ունի հղման ողջ կյանքի ընթացքում: Եթե օբյեկտը ջնջվի, ապա unowned հղման մուտքը կհանգեցնի սխալի:

Այս հղումների նպատակը օբյեկտների կյանքի ցիկլը կառավարելն է՝ կանխելու համար ցիկլային կախվածությունները և հիշողության արտահոսքերը, միաժամանակ պահելով ճիշտ մուտքը օբյեկտներին: