Concurrent Programming in Mac OS X and iOS(English, Paperback, Nahavandipoor Vandad)
Quick Overview
Product Price Comparison
Now that multicore processors are coming to mobile devices, wouldn't it be great to take advantage of all those cores without having to manage threads? This concise book shows you how to use Apple's Grand Central Dispatch (GCD) to simplify programming on multicore iOS devices and Mac OS X. Managing your application’s resources on more than one core isn't easy, but it's vital. Apps that use only one core in a multicore environment will slow to a crawl. If you know how to program with Cocoa or Cocoa Touch, this guide will get you started with GCD right away, with many examples to help you write high-performing multithreaded apps. Package your code as block objects and invoke them with GCD Understand dispatch queues-the pools of threads managed by GCD Use different methods for executing UI and non-UI tasks Create a group of tasks that GCD can run all at once Instruct GCD to execute tasks only once or after a delay Discover how to construct your own dispatch queues About the Author Vandad Nahavandipoor has developed software using Cocoa, Cocoa Touch, Assembly, Delphi, and .NET for many years. As a staff member of a company that is a global leader in mobile money solutions in London, he has worked with some of the world's biggest brands--such as Visa and US Bank-to deliver mobile applications to their customers. Vandad brings an interest in management, leadership and entrepreneurship to his work, believing in the synergy that is achieved as a result of cooperation and working together in a team. Table of Contents Chapter 1 Introducing Block Objects Short Introduction to Block Objects Constructing Block Objects and Their Syntax Variables and Their Scope in Block Objects Invoking Block Objects Memory Management for Block Objects Chapter 2 Programming Grand Central Dispatch Short Introduction to Grand Central Dispatch Different Types of Dispatch Queues Dispatching Tasks to Grand Central Dispatch Performing UI-Related Tasks Performing Non-UI-Related Tasks Synchronously Performing Non-UI-Related Tasks Asynchronously Performing Tasks After a Delay Performing a Task at Most Once Running a Group of Tasks Together Constructing Your Own Dispatch Queues