Concurrency by Tutorials | Kodeco


This ebook is for intermediate iOS builders who already know the fundamentals of iOS and Swift
growth however need to discover ways to make their app effectively carry out duties with out
affecting efficiency, and how one can correctly divide work to make the most of {hardware} to the fullest extent.

  • Grand Central Dispatch
  • Operations & Operation Queues
  • Widespread Concurrency Issues
  • Threads & Thread Sanitizer

Dive Into Concurrency in Your iOS Apps!

What’s concurrency, and why would you even need to use it in your apps? Discover out every part that you must know on this ebook. Study Grand Central Dispatch, Apple’s implementation of C’s libdispatch, often known as GCD — one of many…


This part tells you a number of issues that you must know earlier than you get began, resembling what you’ll want for {hardware} and software program, the place to seek out the venture recordsdata for this ebook and extra.

On this a part of the ebook, you’re going to study concerning the fundamentals of Concurrency. You’re going to study what it’s, what sort of issues it solves and when and the way you’ll use it.

Moreover, you’ll study the fundamental items which comprise Concurrency in iOS growth: Grand Central Dispatch and Operations.

This part will give you foundational data concerning Concurrency, so you’ll want to learn it by means of! The upcoming sections will dive a lot deeper into every of those ideas individually.

Get a fast overview of what concurrency is and why you would possibly need to use it.

Concurrency may be dealt with by both Grand Central Dispatch (GCD) or Operations. Be taught concerning the variations.

On this part, you’ll take a deep dive into Apple’s hottest and easy-to-use mechanism to jot down and handle concurrent duties — Grand Central Dispatch. You’ll discover ways to make the most of queues and threads to regulate the execution of duties in your app, in addition to how one can group these duties collectively. You’ll additionally study frequent pitfalls and risks of utilizing concurrency, and how one can keep away from them.

This chapter teaches you how one can use a GCD queue to dump work from the principle thread. You may additionally study what a “thread” is.

Within the earlier chapter you realized about how queues work. On this chapter you will increase that data to discover ways to submit a number of duties to a queue which have to run collectively as a “group” to be able to be notified after they have all accomplished. You may additionally discover ways to wrap an present API to be able to name it asynchronously.

By now you understand how GCD could make your app a lot sooner. This chapter will present you a number of the risks of concurrency if you happen to’re not cautious, and how one can keep away from them.

Although Grand Central Dispatch gives a lot of the concurrency capabilties you’ll want proper out-of-the-box, generally you’ll need some additional customizability. That is the place Operations come into play. This part will educate you about Operations, Operation Queues and every part in between.

On this chapter you will swap gears and begin studying concerning the Operations class, which permits for rather more highly effective management over your concurrent duties.

Just like the Dispatch Queues you realized about again in Chapter 3, the Operation class makes use of an OperationQueue to carry out an analogous perform.

Now you can create an Operation and submit it to a queue, you will discover ways to make the operation itself asynchronous. Whereas not one thing you will do recurrently, it is essential to know that it is potential.

The “killer function” of Operations is with the ability to inform the OS that one operation depends on one other and should not being till the dependency has completed.

There are occasions when that you must cease an operation that’s operating, or has but to start out. This chapter will educate you the ideas that you simply want to pay attention to to help cancelation.

To wrap up this ebook, this part shall be devoted to exhibiting you ways you should use the data you’ve gathered all through this ebook for real-life functions.

On this part, you’ll take a deeper dive into a typical case the place concurrency performs an enormous function — Core Knowledge — in addition to study Apple’s Thread Sanitizer, an excellent instrument to debug and resolve concurrency points and confusions.

Core Knowledge works properly with concurrency so long as you retain a number of easy guidelines in thoughts. This chapter will educate you how one can make it possible for your Core Knowledge app is ready to deal with concurrency correctly.

Knowledge races happen when a number of threads entry the identical reminiscence with out synchronization and a minimum of one entry is a write. This chapter will educate you how one can use Apple’s Thread Sanitizer to detect information races.


Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button