Sobes.tech
Junior — Middle

Чӣ гуна кор бо хотира дар системаи оператсионӣ iOS амалӣ мешавад?

sobes.tech AI

Ҷавоб аз AI

Дар iOS, идоракунии хотира асос ёфтааст ба модели ARC (Ҳисоби Автоматии Мавқеъҳо), ки ҳисобкунии автоматии мавқеъҳоро иҷро мекунад. Ҳар як объект дар хотира дорои ҳисобкунаки мавқеъҳо мебошад, ки вақте ки мавқеъ нав ба объект дода мешавад, меафзояд ва вақте ки мавқеъ хориҷ карда мешавад, кам мешавад. Вақте ки ҳисобкунак ба сифр мерасад, объект автоматӣ аз хотира хориҷ карда мешавад.

Хусусиятҳои идоракунии хотира дар iOS:

  • ARC ба таҳиягар озод мекунад аз зарурати даъвати manual retain/release.
  • Мавқеъҳои қавӣ (strong) ҳисобкунаро меафзоянд, заиф (weak) на, ки кӯмак мекунад дар пешгирии мавқеъҳои цикли.
  • Вақте ки дар хотира сӯхтанҳо ёфт мешаванд, асбобҳо ҳастанд, масалан Instruments бо Leaks ва Allocations.
  • Ғайр аз ARC, iOS истифода мекунад хотираи виртуалӣ ва механизмҳои идоракунии хотираи системаи оператсионӣ барои оптимизатсияи истифодаи захираҳо.

Масалан, дар Swift, мавқеи заиф:

class Person {
    var name: String
    weak var friend: Person? // мавқеи заиф барои пешгирии цикли

    init(name: String) {
        self.name = name
    }
}

Ин гуна, iOS мепайвандад ҳисобкунии автоматии мавқеъҳо бо механизмҳои системавӣ барои идоракунии самараноки хотира дар барномаҳо.