반응형
[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
- DRF APIException
- Flutter getter setter
- 구글 Geocoding API
- ipad multitasking
- Sketch 누끼
- Flutter Text Gradient
- flutter dynamic link
- Dart Factory
- Django Firebase Cloud Messaging
- cocoapod
- METAL
- 플러터 얼럿
- flutter build mode
- 플러터 싱글톤
- Watch App for iOS App vs Watch App
- Django FCM
- 장고 URL querystring
- Flutter Clipboard
- Python Type Hint
- Django Heroku Scheduler
- SerializerMethodField
- Flutter 로딩
- drf custom error
- ribs
- Flutter Spacer
- github actions
- flutter 앱 출시
- PencilKit
- 장고 Custom Management Command
- flutter deep 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 | 31 |
글 보관함