NSBlog
autorelease c++ casestudy chemicalburn cocoa(6) fridayqna(12) garbagecollection gcd(5) ipc iphone leopard memory nsoperationqueue objective-c(4) parallelism performance(18) rant shark sourcecode stl threading(2)
Friday Q&A 2009-09-25: GCD Practicum
at 2009-09-25 11:52
Welcome back to another Friday Q&A. I'm off to C4 today (hope to see you there!) but I've prepared this in advance so everyone stuck at home (or worse, work) can at least have something interesting to read. Over the past four weeks I've introduced Grand Central Dispatch and discussed the various facilities it provides. In Part I I talked about the basics of GCD and how to use dispatch queues. In Part II I discussed how to use GCD to extract more performance from multi-core machines. In Part III I discussed GCD's event dispatching mechanism, and in Part IV I took care of various odds and ends that I hadn't covered before. This week I'm going to examine a practical application of using GCD to speed up the production of thumbnails for a large quantity of images, a topic suggested by Willie Abrams.Friday Q&A 2009-09-18: Intro to Grand Central Dispatch, Part IV: Odds and Ends
at 2009-09-18 17:23
It's that time of the week again. Over the past three weeks I've introduced you to the major pieces Grand Central Dispatch, an exciting new API for parallel processing and event handling in Snow Leopard. The first week I covered basic concepts and dispatch queues. The second week I discussed how to use dispatch queues for parallel processing on multi-core computers. The third week I covered GCD's event handling system. This week I'm going to cover various odds and ends which I didn't get to before: dispatch queue suspension and targeting, semaphores, and one-time initialization.