본문 바로가기
[ios] GCD ( Grand Central Dispatch ) Tutorial [ios] GCD( Grand Central Dispatch) Tutorial 참조 : http://www.letmecompile.com/gcd-%ED%8A%9C%ED%86%A0%EB%A6%AC%EC%96%BC/ 디스패치 큐의 종류 -Custom Serial & Concurrent Dispatch Queuedispatch_queue_t serialQueue = dispatch_queue_create(“queueSerial”, DISPATCH_QUEUE_SERIAL);dispatch_queue_t concurrentQueue = dispatch_queue_create(“queueConcurrent”, DISPATCH_QUEUE_CONCURRENT); -System Dispatch Queuedispatch_.. 2017. 10. 24.
[Effective Objective-C] 목차와 요약을 통해 한 눈에 알아보는 Effective Objective-C #41 ~ #48 [Effective Objective-C] 목차와 요약을 통해 한 눈에 알아보는 Effective Objective-C #41 ~ #48 출처 : Effective Objective-C #41 : 동기화에는 락보다는 디스패치 큐를 사용하라 동기화 문법을 제공하기 위해 디스패치 큐를 사용할 수 있다. 그리고 그냥 간단하게 @synchronized 블록이나 NSLock 객체를 이용해 동기화를 제공할 수도 있다. 동기화와 비동기화 디스패치를 함께 사용하는 것은 일반적인 락으로 하는 동기화와 동일한 기능을 제공할 수 있지만, 스레드에서 비동기 디스패치로 호출하면 잠금 없이 호출한다. 병렬 큐와 배리어 블록을 이용하면 동기화를 좀 더 효율적으로 할 수 있다. #42 : performSelector 메서드군보다는 .. 2017. 10. 16.
[Effective Objective-C] #44 플랫폼 확장의 이점을 얻으려면 디스패치 그룹을 사용하라 [Effective Objective-C] #44 플랫폼 확장의 이점을 얻으려면 디스패치 그룹을 사용하라 출처 : Effective Objective-C -플랫폼 확장이라 함은 CPU 의 다수의 코어를 자동으로 활용하는 이점 -디스패치 그룹은 그룹 작업을 쉽게 할 수 있게 하는 GCD 기능이다.이 기능을 사용해 작업들이 모두 끝나기를 기다리거나 작업들이 모두 끝났을 때 콜백을 통해 알림을 받을 수 있다.이 기능은 몇 가지 이유 때문에 매우 유용하다.이점 중 첫 번째이자 가장 흥미로운 것은 다수의 작업이 병렬로 수행되길 원하고 모든 작업이 언제 끝났는지 알고 싶을 때다. 다음 함수로 디스패치 그룹을 생성할 수 있다.dispatch_group_t dispatch_group_create(); -그룹은 식별자가.. 2017. 10. 9.
반응형