Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- DISPATCH
- async
- 전자출입
- Responder chain
- reversed
- RxSwift
- UserDefaults
- Python
- binder
- ReactorKit
- moya
- 공백
- Asnyc
- 입력
- URLSession
- weak self
- Combine
- UIResponder
- 사내배포
- readLine
- swift
- vtable
- BidirectionalCollection
- Custom Class
- ios
- hitTest
- delays deallocation
- input
- MaxHeap
- AVCaptureSession
Archives
- Today
- Total
목록weak self (1)
틈틈히 적어보는 개발 일기
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/uwzga/btryjFbk5yE/J7VQibAlkTskStkImqrt6K/img.png)
이전에 프로젝트를 진행하며 클로저 내부에서 self를 활용해야 했을 때 이 코드를 정말 자주 습관적으로 사용했다. { [weak self] _ in } guard let self = self else { return } 클로저 내부에서의 캡쳐링으로 인한 강한 참조를 방지하기 위해 `[weak self]`를 활용하기는 했는데 Optional을 해제하기 위해 저렇게 처리를 하다 보니 문득 이게 맞기는 한건가..? 내가 아무 생각 없이 사용하고 있지는 않는건가..? 라는 생각이 들었었고, 또한 강한 참조에 대해 공부할 필요를 느꼈다. 자연스럽게 `guard let self = self else { ... }` 를 사용하는 이유, 이에 대한 동작 원리, 그리고 `[weak self]`를 부르지 않고 바로 `se..
📝 TIL
2022. 4. 3. 17:34