Modern Concurrency in Swift: Introducing Async/Await, Task Groups & Actors

Modern Concurrency in Swift: Introducing Async/Await, Task Groups & Actors

English | 2021 | ISBN: 978-1950325535 | 273 Pages | PDF, EPUB | 56 MB

Learn Modern Swift Concurrency!

For years, writing powerful and safe concurrent apps with Swift could easily turn into a daunting task, full of race conditions and unexplained crashes hidden in a massive nesting of callback closures.

In Swift 5.5, Apple introduced a new concurrency model featuring the async/await syntax, which lets you write asynchronous code that reads like synchronous code. But like any new feature, here be dragons! So how will you achieve the much-desired mastery of modern Swift concurrency?

Modern Concurrency in Swift comes to the rescue, showcasing what you need to know about async/await, tasks, actors and everything in between!

Who This Book Is For
This book is for intermediate Swift developers who are familiar with writing asynchronous applications and who want to leverage the new concurrency features in Swift 5.5 to write safer and more predictable asynchronous apps.

Topics Covered in Modern Concurrency in Swift

  • Using async/await: Learn how to use the new async/await keywords to define and run asynchronous work.
  • Actors: Find out how to use the actor model to easily protect shared mutable state in a synchronized container.
  • Tasks: You’ll dive deeper into the Task type, which powers all asynchronous tasks in Swift’s modern concurrency model.
  • Task Groups: Use a Task Group to group multiple tasks together and run them concurrently, while using a familiar Array-like syntax to iterate over the results.
  • Custom Asynchronous Sequences: Leverage the power of async/await in your own asynchronous work, by learning how to create custom AsyncStreams.
  • Testing Asynchronous Code: Asynchronous code can be a challenging beast to test. You’ll learn everything you need to tackle this challenge.

One thing you can count on: After reading this book, you’ll be prepared to leverage Swift’s new concurrency features in your app to write safe, performant and predictable asynchronous code.