일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Apple Developer Academy
- Linked List
- Swift
- 데드락
- COLOR
- Codable
- 동시성
- core data
- IOS
- 동기화
- UserDefaults
- Algorithm
- 오브젝트
- struct
- 100 days of SwiftUI
- 상호배제
- decode
- forEach
- async
- 앨런
- 인프런
- 알고리즘
- scrollview
- @state
- 운영체제
- 가상 메모리
- deadlock
- SwiftUI
- 비동기
- 프로세스 스케줄링
- Today
- Total
목록생각정리 (19)
기어가더라도 제대로
개요 system 함수를 호출 할 때 적지 않은 시간이 들것을 예상해야한다. 커널이나 다른 시스템 레이어에 문맥교환이 일어나면 프로세스에서 문백 교환이 일어나는 것보다 훨씬 비싼 자원이 소모된다. 그 결과 많은 시스템 라이브러리들은 비동기 작업 처리 인터페이스를 마련해놓았다. 덕분에 작업을 요청하고 요청이 처리되는 동안 다른 일들을 할 수 있다. GCD 는 블락과 디스패치 큐를 사용해서 요청을 제출하고 원래의 코드로 되돌아왔음을 알리는 결과를 가지는 일반적인 행동을 정립하였다. 디스패치 소스(Dispatch Source) 에 대해서 알아보기 Dispatch Source 는 저수준의 시스템 이벤트의 처리를 조율하는 근원적인 데이터 타입이다. GCD 는 다음과 같은 Dispatch Source 에 타입에 대..
목차 - UIKit 이 Thread-Safe 하지 않은 이유 - Run Loop 와 뷰 드로잉 사이클 - iOS 렌더링 과정을 이해하기 - 렌더링 프레임워크 - Core Animation Pipeline - Texture or ComponentKit - 결론 - 역자의 말(소감, 추가 의문) 개발을 하다보면 background 스레드에서 UIKit 의 요소를 호출하는 경우가 있다. background 에서 작업하는 네트워크 콜백에서 imageView.image = image 라고 하거나, UIApplication.sharedApplication 을 호출하는 등의 작업을 백그라운드 스레드에서 하는 경우말이다. 이럴 경우에, 우리는 런타임 에러를 얻게 되고 즉시 그것들을 고칠 것이다. 근데 생각을 해보면, ..
목차 - NSCache 를 저장소로 사용하기 - Image rendering pipeline 구축하기 - In-memory Image Cache - Image 캐시 구현 - `ImageLoader` 로 통합 - 결론 거의 모든 앱은 어느 정도는 그래픽을 가지고 있다. 이로 인해 앱 개발자들에게 이미지를 다운로드하고 표시하는 것이 가장 자주 하는 일 중 하나가 되었다. 결국, 앱이 같은 이미지를 여러번 리로드하는 것은 불필요한 일일 수 있다. 이 글에서는 이미지 캐시를 생성하고, 컴바인 프레임 워크를 사용한 이미지 로더와 통합함으로써 이미지 다운로드와 캐싱을 어떻게 개선할지를 보여줄 것이다. NSCache 를 저장소로 사용하기 그동안 캐싱 메커니즘을 iOS 프로젝트에서 사용할 때 대부분은 당신은 NSCac..