Introducing Concurrency
Concurrency describes your app’s ability to do more than one thing at once, which is becoming increasingly important in a multicore world. It is the key to ensuring that your app remains responsive, one of the core principles of building great apps. However, concurrency is hard. Behind it’s friendly looking facade hides a whole host of difficult to diagnose, debug and fix bugs. In this video series you’ll learn some of the important concepts behind concurrency in general, before discovering how you can introduce concurrency in your own apps. You’ll start at the highest API level with NSOperation, learning the basics before seeing it in action when you solve problems in a real app. The second half of the series drops down to Grand Central Dispatch – the foundation of concurrency on Apple’s platforms – where you’ll learn about some more advanced techniques. There are no hard prerequisites for this course, but you should be familiar with iOS development in Swift. If you’re not, be sure to check out iOS 101 and the Swift video series. By Sam Davies.
Find out what's covered in our Introducing Concurrency video tutorial series.
Learn about what an NSOperation is, and how you can create and run them.
Learn how to use NSOperationQueue to handle the scheduling and execution of NSOperations.
Learn how to use an NSOperation to wrap an asynchronous function such as a network call.
Learn how to use the results from one operation in another and specify that the second operation shouldn't be executed until the first has completed.
Learn how to perform a cancellation of an NSOperation.
Pull together all the concurrency knowledge you've learned so far in this series to improve the scrolling performance of a table view in a realistic app.
Learn the basics of Grand Central Dispatch, the low level framework that underlies NSOperation.
Learn how use GCD dispatch groups so that you can respond to the completion of a whole selection of GCD tasks.
Learn how to use dispatch barriers to create thread-safe objects to prevent inconsistent state.
Learn about a couple of other cool features of grand central dispatch: dispatchonce and dispatchafter.
Review what you've learned in our Introducing Concurrency video tutorial series and get some hints and tips for handling Concurrency on iOS.