일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- rxswift
- reactivex
- NSAttributedString
- Stanford cs193p
- MVP
- Codable
- Arc
- UIGestureRecognizer
- UIDynamicAnimator
- JSONDecoder
- Singleton Design Pattern
- UIDocument
- CustomStringConvertible
- Equatable
- Hashable
- UIBezierPath
- unowned
- Observable
- IOS
- PhotoKit
- weak
- 에어팟
- 오늘의성취도
- AVFoundation
- Swift
- CoreGraphics
- JSONEncoder
- Git
- uicollectionview
- UIDocumentBrowserViewController
- Today
- Total
목록Arc (2)
아직은 개린이
Swift의 ARC는 레퍼런스 카운트를 관리하여 메모리 누수를 방지하는 역할을 한다. 이 때, 인스턴스끼리 강한 순환 참조 문제를 해결하는 두가지 방법이 있는데 이에 대해 알아보고자 한다. 클래스 인스턴스의 강한 순환 참조를 해결할 수 있는 방법은 weak reference와 unowned reference를 쓰는 것이다. weak와 unowned는 strong 참조와 달리 레퍼런스 카운트를 세지 않는다. Weak References Weak Reference(약한 참조)는 참조하는 인스턴스를 강하게 유지하지 않는 참조이다. 다른 인스턴스의 수명이 짧을 때 사용한다. 참조하는 인스턴스를 강하게 유지하지 않기 때문에 약한 참조를 하는 동안 해당 인스턴스가 할당 해제될 수 있다. 할당 해제가 되면 ARC는 ..
ARC(Automatic Reference Counting) iOS는 앱의 메모리 사용을 추적, 관리하기 위해 ARC 기능을 사용한다. ARC는 Automatic Reference Counting의 줄임말로 참조 메모리 관리를 자동으로 해주는 기능을 뜻한다. 인스턴스가 참조되거나 참조해제될 때 횟수를 카운팅하고, 횟수가 0이 되면 인스턴스를 메모리에서 해제하는 방식으로 수행된다. How ARC Works 클래스가 새로운 인스턴스를 생성할 때, ARC는 인스턴스에 대한 정보를 저장할 메모리 청크를 할당한다. 할당한 메모리 청크에는 인스턴스의 타입에 대한 정보, 인스턴스와 관련된 프로퍼티 값 등을 저장해둔다. 더이상 인스턴스가 필요하지 않게 되면 자동으로 메모리에서 비우는 방식으로 메모리를 관리한다. 하지만..