Memory Management & ARC
ARC, strong/weak/unowned, retain cycle, capture list, 메모리 누수, 프로파일링
22 면접 질문·
Senior
1iOS에서 ARC(Automatic Reference Counting)란 무엇입니까?
1
iOS에서 ARC(Automatic Reference Counting)란 무엇입니까?
답변
ARC는 객체에 대한 참조를 세는 자동 메모리 관리 메커니즘입니다. 컴파일러가 retain과 release 호출을 자동으로 삽입하여 수동 관리가 필요 없게 합니다. 참조 카운트가 0에 도달하면 객체는 해제됩니다. ARC는 일반적인 메모리 누수를 방지하여 iOS 프로그래밍을 크게 단순화합니다.
2ARC에서 strong reference란 무엇입니까?
2
ARC에서 strong reference란 무엇입니까?
답변
strong reference는 참조하는 객체의 참조 카운터를 증가시킵니다. 기본적으로 모든 변수는 strong reference입니다. 적어도 하나의 strong reference가 객체를 가리키는 한 객체는 메모리에 남아 있습니다. strong reference를 너무 많이 사용하면 해제를 방해하는 retain cycle이 생길 수 있습니다.
3retain cycle(순환 참조)이란 무엇입니까?
3
retain cycle(순환 참조)이란 무엇입니까?
답변
retain cycle은 둘 이상의 객체가 서로 strong reference를 보유할 때 발생합니다. 각각이 상대방의 참조 카운트가 0에 도달하는 것을 막기 때문에 어느 쪽도 해제될 수 없습니다. 이는 메모리 누수를 발생시킵니다. retain cycle은 순환 관계에서 weak 또는 unowned reference를 사용하여 방지합니다.
4
ARC 메모리 관리에서 deinit의 역할은 무엇입니까?
5
weak reference와 unowned reference의 차이점은 무엇입니까?
+19 면접 질문
기타 iOS 면접 주제
Swift 기초
Junior
25개 질문Swift 언어 기초
Junior
15개 질문UIKit 기초
Junior
18개 질문UIViewController 생명주기
Junior
20개 질문UserDefaults & Keychain
Junior
20개 질문애플리케이션 생명 주기
Junior
20개 질문Auto Layout & Constraints
Mid-Level
24개 질문UITableView & UICollectionView
Mid-Level
25개 질문SwiftUI 기초
Mid-Level
18개 질문SwiftUI 상태 관리
Mid-Level
22개 질문SwiftUI 내비게이션
Mid-Level
18개 질문Networking & URLSession
Mid-Level
20개 질문Codable 및 JSON 파싱
Mid-Level
20개 질문Core Data
Mid-Level
22개 질문프로토콜 지향 프로그래밍
Mid-Level
20개 질문MVVM 아키텍처
Mid-Level
20개 질문푸시 알림
Mid-Level
18개 질문단위 테스트와 XCTest
Mid-Level
20개 질문UI 테스트
Mid-Level
18개 질문Xcode 및 빌드 시스템
Mid-Level
16개 질문Swift Package Manager
Mid-Level
16개 질문Combine Framework
Senior
24개 질문Concurrency & async/await
Senior
26개 질문iOS Design Patterns
Senior
24개 질문성능 최적화
Senior
22개 질문보안 및 암호화
Senior
20개 질문SwiftUI Advanced
Senior
22개 질문iOS 애플리케이션 아키텍처
Senior
22개 질문