iOS Concurrency with GCD & Operations

Sep 12 2023 · Swift 5.8, macOS 13, iOS 16, Xcode 14.3

Part 3: Operations & OperationQueues

23. Conclusion

Episode complete

About this episode

Leave a rating/review

See forum comments
Cinema mode Mark complete Download course materials
Previous episode: 22. Cancel Operations

Get immediate access to this and 4,000+ other videos and books.

Take your career further with a Kodeco Personal Plan. With unlimited access to over 40+ books and 4,000+ professional videos in a single subscription, it's simply the best investment you can make in your development career.

Learn more Already a subscriber? Sign in.

Transcript: 23. Conclusion

Conclusion

Congratulations, you’ve finished this course! Here’s a summary of everything you’ve learned. In the first part of this course, you learned about Grand Central Dispatch.

You learned the difference between running tasks on concurrent and serial queues.

And the difference between dispatching a task synchronously or asynchronously.

You learned about the system’s dispatch queues, with the different quality of service values.

You can now use dispatch work items, dispatch groups and dispatch semaphores.

And you learned how to wrap asynchronous functions so you can use them in dispatch groups.

In the second part of this course, you learned how to watch out for deadlocks and priority inversion, and how to make a class thread-safe.

The final part of this course was all about Operation and OperationQueue.

You can create block operations but, more often, you’ll subclass Operation to create reusable custom operations.

You know the states of an operation’s life cycle.

And you created an AsyncOperation class to manage these states for an asynchronous operation, so you can add it to an operation queue.

You can now use operation queues to manage dependencies between operations, and to cancel operations when the app doesn’t need them to complete.

Check out our other concurrency courses: Swift concurrency and Networking.