Junior — Middle
როგორ აკვირდება და მართავს ARC ავტომატური მეხსიერების მართვის სისტემა ობიექტებზე მიმაგრებულ ბმულებს?
sobes.tech AI
პასუხი AI-სგან
ARC (ავტომატური მითითებების რაოდენობის გამოთვლა) არის iOS-ის მეხსიერების მართვის სისტემა, რომელიც ავტომატურად აკონტროლებს ობიექტებზე მითითებების რაოდენობას.
მუშაობის პრინციპი:
- თითოეულ ობიექტს აქვს მითითებების გამოთვლის გამოთვლილი.
- როდესაც ახალი ძლიერი მითითება შეიქმნება ობიექტზე, გამოთვლილი გაიზრდება.
- როდესაც მითითება წაიშლება ან გახდება nil, გამოთვლილი შემცირდება.
- თუ გამოთვლილი მიაღწევს ნულს, ობიექტი ავტომატურად გათავისუფლდება მეხსიერებიდან.
ARC ანალიზს ახორციელებს კოდს კომპილაციის დროს და სვამს retain/release-ებს, რათა მართოს ობიექტების სიცოცხლის ციკლი, მეხსიერების ხელით მართვის გარეშე.
მნიშვნელოვანია თავიდან აიცილოთ ციკლური მითითებები (retain cycles), როდესაც ორი ობიექტი ერთმანეთზე მითითებით არის დაკავშირებული, რაც ხელს უშლის მეხსიერების გათავისუფლებას. ამისთვის გამოიყენება სუსტი (weak) ან უვითარებელი (unowned) მითითებები.