반응형
[CoreData] CoreData 멀티 스레딩 전략으로 Main Tread Block을 막아보자
1. 문제 뷰컨트롤러에 텍스트 뷰를 올려주세요. 그리고 앱이 launch 된 지 5분후에 만개의 데이터를 만들고 저장하는 코어 데이터 연산을 해보겠습니다. CoreDataManager는 이렇게 구성되어있습니다. 그러면 텍스트를 타이핑하다가 5초 후에 CoreData 연산이 시작되면 아무리 타이핑을 입력해도 입력이 안됩니다. UI 담당인 메인 쓰레드가 blocking 되었기 때문이죠! CoreData 연산이 끝나면 다시 타이핑이 가능해집니다. 그 이유는 무엇일까요...?!?!?! 우리가 사용한 viewContext가 main queue에서 동작하는 친구이기 때문입니다!! 그래서 시간이 오래 걸리는 작업이라면, viewContext 를 사용하면 안됩니다. 사용자의 화면을 blocking 하기 때문이죠!!! ..
🍏/iOS
2020. 4. 3. 18:58
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- Django FCM
- Flutter Clipboard
- flutter build mode
- flutter dynamic link
- Django Firebase Cloud Messaging
- Django Heroku Scheduler
- 장고 URL querystring
- drf custom error
- 장고 Custom Management Command
- Flutter getter setter
- Flutter Text Gradient
- Python Type Hint
- ipad multitasking
- flutter deep link
- Flutter 로딩
- 플러터 싱글톤
- ribs
- cocoapod
- github actions
- METAL
- Sketch 누끼
- 구글 Geocoding API
- Watch App for iOS App vs Watch App
- flutter 앱 출시
- DRF APIException
- SerializerMethodField
- Dart Factory
- 플러터 얼럿
- Flutter Spacer
- PencilKit
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함