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 | 29 | 30 |
Tags
- Archive
- window
- 개발자
- appstore
- 이미지
- darkmode
- SwiftUI
- MacOS
- geofencing
- Apple
- Notification
- Code
- Git
- JPA
- FLUTTER
- IOS
- 웹뷰
- Firebase
- Session
- rxswift
- view
- iOS16
- error
- UIButton
- Realm
- Xcode
- mac
- github
- Swift
- 한글
Archives
- Today
- Total
목록cancelable (1)
EEYatHo 앱 깎는 이야기
SwiftUI ) TCA 단점 ( with AsyncStream, cancel, cancelable ) - EEYatHo iOS
TCA의 단점 WebSocket 을 구현하는 등, Stream을 받아와서 구독하고, 지속적으로 이벤트를 수신해야할 때 RetainCycle 이 무조건 발생한다. 즉, view의 사이클에 맞춰서 명시적으로 구독을 해제해줘야 한다. 이유 Action을 발생할 수 있는 엔드포인트를 .run을 통해 받아오고, Stream의 실행부에, 엔드포인트를 넣기 때문에 RetainCycle이 발생한다. ( 스트림실행부 -> 엔드포인트 -> 리듀서 -> 스트림 -> 스트림실행부 ) ( Class의 weak가 그립다.. ) 결과 때문에, view의 사이클에 맞춰서 명시적으로 구독을 해제해줘야, reducer도 잘 해제된다. ( onAppear, onDisappear 을 활용. ) ( 만약 init, deinit 으로 하고싶다..
iOS, Swift/Tip, Bug, Swift Error
2024. 2. 1. 18:35