Memory Management & ARC
ARC, strong/weak/unowned, Retain Cycles, Capture Lists, Memory Leaks, Profiling
1Was ist ARC (Automatic Reference Counting) in iOS?
Was ist ARC (Automatic Reference Counting) in iOS?
Antwort
ARC ist ein automatischer Speicherverwaltungsmechanismus, der die Referenzen auf ein Objekt zählt. Der Compiler fügt automatisch retain- und release-Aufrufe ein und macht die manuelle Verwaltung überflüssig. Wenn der Referenzzähler null erreicht, wird das Objekt freigegeben. ARC vereinfacht die iOS-Programmierung erheblich, indem es häufige Memory Leaks verhindert.
2Was ist eine Strong Reference in ARC?
Was ist eine Strong Reference in ARC?
Antwort
Eine Strong Reference erhöht den Referenzzähler des referenzierten Objekts. Standardmäßig sind alle Variablen Strong References. Das Objekt bleibt im Speicher, solange mindestens eine Strong Reference darauf zeigt. Zu viele Strong References können Retain Cycles erzeugen, die die Freigabe verhindern.
3Was ist ein Retain Cycle (Referenzzyklus)?
Was ist ein Retain Cycle (Referenzzyklus)?
Antwort
Ein Retain Cycle entsteht, wenn zwei oder mehr Objekte gegenseitige Strong References halten. Keines kann freigegeben werden, weil jedes verhindert, dass der Referenzzähler des anderen null erreicht. Dies erzeugt ein Memory Leak. Retain Cycles werden vermieden, indem man in zirkulären Beziehungen Weak oder Unowned References verwendet.
Welche Rolle spielt deinit bei der ARC-Speicherverwaltung?
Was ist der Unterschied zwischen einer Weak und einer Unowned Reference?
+19 Interview-Fragen
Weitere iOS-Interviewthemen
Swift-Grundlagen
Grundlagen der Swift-Sprache
UIKit-Grundlagen
UIViewController-Lebenszyklus
UserDefaults & Keychain
Anwendungslebenszyklus
Auto Layout & Constraints
UITableView & UICollectionView
SwiftUI-Grundlagen
SwiftUI State-Management
SwiftUI-Navigation
Networking & URLSession
Codable & JSON-Parsing
Core Data
Protokollorientierte Programmierung
MVVM-Architektur
Push-Benachrichtigungen
Unit-Testing & XCTest
UI-Tests
Xcode & Build-System
Swift Package Manager
Combine Framework
Concurrency & async/await
iOS Design Patterns
Performance-Optimierung
Sicherheit und Verschlüsselung
SwiftUI Advanced
iOS-Anwendungsarchitektur
Meistere iOS für dein nächstes Interview
Zugang zu allen Fragen, Flashcards, technischen Tests, Code-Review-Übungen und Interview-Simulatoren.
Kostenlos starten